You can absolutely have a YouTube Live link that stays the same, even when you start new streams. The key concepts are:

  • Use YouTube’s “Go live” / “Stream” setup with a reusable stream key
  • Use your channel’s Live URL, which always points at your current or next live stream
  • Optionally embed that permanent live URL in your Laravel app

Below is a step‑by‑step guide.


1. The Two Types of “Permanent” YouTube Live Links

There are two main ways to get a stable link:

A. Channel’s Auto-Updating Live URL (Recommended)

Every channel has a special URL that always points to the current or upcoming live stream:

https://www.youtube.com/channel/CHANNEL_ID/live

Or sometimes:

https://www.youtube.com/c/YourCustomName/live
https://www.youtube.com/@YourHandle/live

Replace:

  • CHANNEL_ID with your channel’s ID, or
  • YourCustomName / @YourHandle with your custom channel URL / handle.

This URL stays the same. Each time you go live (with any stream key), YouTube will redirect this URL to the active live video.

How to get your channel live link:

  1. Go to your channel’s homepage on YouTube.
  2. Copy the URL in the browser, it usually looks like:
    https://www.youtube.com/@YourHandle
  3. Add /live to the end:
    https://www.youtube.com/@YourHandle/live

Use that as your single, permanent link.


B. Use a Reusable Stream Key (For Your Encoder/OBS)

If you stream via OBS, Streamlabs, hardware encoders, etc., you can create a reusable stream key so your encoder settings never need to change.

On YouTube:

  1. Go to YouTube Studio → https://studio.youtube.com
  2. Click Create → Go live
  3. In the left sidebar, choose Stream (not Webcam, not Manage).
  4. Under Stream settings, find Stream key.
  5. Choose Create new stream key (if you don’t already have one) and make sure it is reusable, not “auto-generated for each event.”
  6. Copy this stream key into OBS or your encoder once.

From now on:

  • You always stream using the same stream key.
  • YouTube creates a new live video, but your channel live URL (e.g., @YourHandle/live) will always point to whatever is currently live.

2. Why Your Stream URL Changes, and How to Avoid It

By default, every live stream has a unique URL like:

https://www.youtube.com/watch?v=VIDEO_ID

This VIDEO_ID changes for every new stream, which is why:

  • You can’t rely on a specific watch URL staying the same.
  • But you can rely on the channel live URL staying constant and automatically redirecting viewers.

So:

  • Do not share https://www.youtube.com/watch?v=VIDEO_ID if you want a permanent link.
  • Do share https://www.youtube.com/@YourHandle/live (or /channel/CHANNEL_ID/live).

3. Embedding a Permanent YouTube Live Player in a Laravel App

If you want a YouTube live player that always shows the latest stream in your Laravel site, you can embed the channel live URL in an <iframe>.

Simple static Blade example

{{-- resources/views/live.blade.php --}}
<div class="ratio ratio-16x9">
    <iframe
        src="https://www.youtube.com/embed/live_stream?channel=YOUR_CHANNEL_ID"
        title="YouTube Live Stream"
        frameborder="0"
        allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture"
        allowfullscreen
    ></iframe>
</div>

Replace YOUR_CHANNEL_ID with your actual channel ID.

This special embed URL:

https://www.youtube.com/embed/live_stream?channel=YOUR_CHANNEL_ID
  • Always shows the current live stream of that channel.
  • If there’s no current live stream, it may show the last completed stream or a “not live” message.

Getting your channel ID

  1. Go to YouTube Studio: https://studio.youtube.com
  2. Click Settings → Channel → Advanced settings
  3. Click View advanced settings
  4. Copy your Channel ID

You can then store it in .env:

YOUTUBE_CHANNEL_ID=UCxxxxxxxxxxxxxxxxxx

And in your Blade view:

<iframe
    src="https://www.youtube.com/embed/live_stream?channel={{ config('services.youtube.channel_id') }}"
    title="YouTube Live Stream"
    frameborder="0"
    allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture"
    allowfullscreen
></iframe>

And in config/services.php:

'youtube' => [
    'channel_id' => env('YOUTUBE_CHANNEL_ID'),
],

4. Summary: One URL for All Future Streams

To create a YouTube streaming link that stays the same, follow this pattern:

  1. Set up a reusable stream key in YouTube Studio for your encoder (OBS, etc.).

  2. Always go live using that reusable key.

  3. Distribute one of these permanent links to your viewers:

    • Watch link (auto-redirects):
      https://www.youtube.com/@YourHandle/live or
      https://www.youtube.com/channel/CHANNEL_ID/live

    • Embed link (for websites / Laravel apps):
      https://www.youtube.com/embed/live_stream?channel=YOUR_CHANNEL_ID

With this setup, you can start and stop as many new streams as you want, and your audience (or your Laravel app) uses the same URL forever.


5. Useful Official Resources

These documents explain YouTube Live basics, reusable keys, and recommended settings in more detail.