LiveScheduler

User Documentation — LiveScheduler

Table of Contents

  1. Overview
  2. Sign In
  3. Dashboard
  4. Create a Recurrence
  5. Edit a Recurrence
  6. Delete a Recurrence
  7. The Calendar
  8. Manage an Individual Live
  9. Sync from YouTube
  10. Subscription and Billing
  11. Delete Your Account
  12. Frequently Asked Questions

1. Overview

LiveScheduler is a web application that automates the creation of your recurring YouTube live streams. Instead of manually recreating each broadcast week after week, you define a recurrence rule (frequency, date range, time, title, options) and LiveScheduler automatically generates each occurrence as a real YouTube broadcast — ready to go live.

What LiveScheduler does

  • Generates up to 100 YouTube live occurrences from a single rule
  • Creates each broadcast directly via the YouTube Data API v3
  • Lets you edit the settings of an individual live or propagate changes to an entire series
  • Syncs changes made in YouTube Studio back to the application
  • Provides a unified calendar to visualize and manage all your live streams at a glance

What LiveScheduler does NOT do

  • It does not stream the live itself — you must start your streaming software (OBS, Streamyard, etc.) as usual
  • It does not delete your lives already created on YouTube when you delete your account (see §11)
  • It does not manage streams that are in progress or have ended

2. Sign In

How to sign in

LiveScheduler uses Google sign-in exclusively. There is no password to create.

  1. On the home page, click "Continue with Google"
  2. Select the Google account associated with your YouTube channel
  3. Grant the requested permissions (see below)

Requested permissions

LiveScheduler requests access to your YouTube account (youtube.force-ssl) in order to:

  • Create YouTube broadcasts on your behalf
  • Edit and delete existing broadcasts
  • Upload thumbnails to YouTube

These permissions are required for the application to function. If you deny them, the application will not be able to create live streams on YouTube.

YouTube Brand Accounts

If your YouTube channel is managed through a Brand Account (Google brand account), select that account when signing in. The displayed email address may be a synthetic address (@pages.plusgoogle.com) — this is normal.

Language

The interface is available in French, English, and Spanish. The language selector (globe icon, top right) is available on all pages. Your preference is saved to your profile.


3. Dashboard

The dashboard is the main page of the application, accessible via "Dashboard" in the navigation.

What you'll find there

  • Your subscription badge (Trial · X days / Active / Payment overdue / Trial expired) at the top left
  • Your list of recurrence rules in a table
  • The calendar of all your scheduled lives below the table
  • The "+ New Recurrence" button to create a rule
  • The "Sync from YouTube" button to pull in changes made in YouTube Studio

Recurrence table

Each row in the table shows:

Column Content
Live Title The title configured for the series
Frequency E.g.: "Every week", "Every 3 days"
Period The start and end dates of the rule
Time The broadcast time
Actions Pencil icon (edit) · Trash icon (delete)

If you haven't created any recurrences yet, the table displays "No recurrences scheduled yet."


4. Create a Recurrence

Click "+ New Recurrence" from the dashboard. The form is divided into three sections.

Section 1 — Live Settings

These settings serve as the template for all generated occurrences.

Title (required)

The title that will appear on YouTube for each broadcast. You can edit it later for an individual live or propagate a new title to all future lives by editing the recurrence.

Personalising the title with date tokens

You can include tokens in the title (and in the description) so that each live automatically receives a title reflecting its own date. LiveScheduler replaces each token with the corresponding value at generation time.

Token Example Description
{day} Wednesday Full weekday name
{day_short} Wed Short weekday name
{date} 8 Day number (no leading zero)
{date_padded} 08 Day number, 2 digits
{month} August Full month name
{month_short} Aug Short month name
{month_number} 08 Month number, 2 digits
{year} 2025 4-digit year
{year_short} 25 2-digit year
{time} 20:00 Live time (HH:mm)

Examples:

  • "Live — {day} {date} {month}""Live — Wednesday 8 August"
  • "Episode {date}/{month_number}/{year}""Episode 08/08/2025"
  • "Class on {day_short} at {time}""Class on Wed at 20:00"

The form shows a live preview below the title field as soon as you type a token. Clickable buttons let you insert tokens directly into the title or description without typing them manually.

Token language: day and month names are generated in your interface language (French, English, or Spanish), based on your saved profile preference.

Tokens in the description: the same tokens work in the description field. Each live will receive its own description with its date resolved.

Description (optional)

The YouTube broadcast description. Supports line breaks. Also supports date tokens (see above).

Visibility (required)

Three options:

  • Public — visible to everyone on YouTube
  • Unlisted — accessible only via the direct link, not indexed
  • Private — visible only to you

Tip: Choosing "Private" lets you review each broadcast before making it public.

Early publication (hours) (optional)

By default, each YouTube broadcast is created immediately when the recurrence is validated — it appears on YouTube as soon as the task is processed.

The "Early publication (hours)" field lets you defer that creation: the broadcast will only be created on YouTube N hours before the scheduled broadcast time.

Example: a live scheduled for Thursday at 20:00 with "Early publication = 48" will only be created on YouTube on Tuesday at 20:00 (48 hours before).

How to use:

  • Leave the field empty to create broadcasts immediately (default behavior)
  • Enter a value in hours (e.g. 48, 24, 72) to defer the YouTube creation

Behaviors once validated:

  • If the publication window has not yet passed (e.g. the live is in 10 days and the delay is 48 h): the live gets Scheduled status (blue in the calendar). YouTube creation is deferred.
  • If the publication window has already passed (e.g. the live is tomorrow and the delay is 48 h): the live gets Pending status (orange) immediately and the YouTube broadcast is created in the usual way.

Note: Scheduled lives (blue) cannot be synced from YouTube or edited via YouTube Studio — the broadcast does not yet exist. The "Sync from YouTube" button is hidden for these lives.

Advanced YouTube Settings

Expand the "Advanced YouTube Settings" section to access the following options. They map directly to the YouTube Data API v3 settings.

Option Default Description
Live duration (minutes) empty Sets the scheduled end time. Leave empty to not set one.
Monitor stream Enabled Allows you to preview the live before its public broadcast.
Broadcast delay (ms) 0 Delay between your source stream and the public broadcast, from 0 to 900,000 ms. Requires monitor stream enabled.
Auto start Disabled The live starts automatically when the incoming stream is detected.
Auto stop Disabled The live stops automatically when the stream is interrupted.
Closed captions Enabled Enables YouTube automatic captions.
DVR Enabled Allows viewers to rewind within the live stream.
Embed Enabled Allows embedding the player on third-party websites.
Record from start Enabled Automatically records the replay from the beginning of the live.
Made for kids Disabled COPPA legal declaration. Disables chat, Super Chats, and some ads.

Section 2 — Thumbnail

Upload an image that will be sent to YouTube as the broadcast thumbnail.

  • Accepted formats: JPEG or PNG
  • Maximum size: 2 MB
  • The thumbnail is sent directly to YouTube and is not stored on LiveScheduler's servers
  • The thumbnail is applied to each generated occurrence

Limitation: The thumbnail cannot be set at the time the YouTube broadcast is created. It is uploaded asynchronously in a second step. If an error occurs during the upload, broadcasts will still be created — but without a thumbnail.

Section 3 — Schedule

These settings define when and how often your lives are generated. They cannot be changed after the recurrence is created.

Frequency

Combine an interval (integer ≥ 1) and a unit:

  • Day(s) — e.g.: "Every 2 days"
  • Week(s) — e.g.: "Every week"
  • Month(s) — e.g.: "Every 3 months"

Start date

The date of the first broadcast. It must be in the future. If the date is today, the live time must also be in the future.

End date

The date of the last possible occurrence. The application generates occurrences up to this date (inclusive if applicable), up to a maximum of 100 occurrences.

Example: For a weekly live from January 1 to December 31, 52 occurrences will be generated.

Live time

The time at which each broadcast will be scheduled. It is interpreted in your browser's timezone, automatically detected on first access.

Validate and Generate

Click "Validate and Generate". If there are validation errors (missing required field, date in the past, etc.), the form remains displayed with errors highlighted in red.

Once validated, LiveScheduler:

  1. Saves the recurrence rule to the database
  2. Generates the occurrences (ScheduledLive) and assigns their initial status
  3. Redirects you to the dashboard

Status assigned at generation:

  • No "Early publication" delay configured: the live immediately gets Pending status (orange). A YouTube broadcast creation task is dispatched right away.
  • Delay configured, publication window not yet reached: the live gets Scheduled status (blue). YouTube creation is deferred — a background scheduler checks every minute and promotes the live to Pending when the time comes.
  • Delay configured, publication window already passed: the live immediately gets Pending status (orange) and is processed right away, just like the no-delay case.

Colors update in real time without reloading the page.

Trial period

During your 30-day free trial:

  • Full access to all features — no limit on the number of recurrences or lives per rule
  • The end date of your recurrences cannot exceed 30 days from today — this constraint disappears as soon as you subscribe

Once the trial ends, your account becomes read-only. You can still view the calendar, delete lives, and sync from YouTube, but creating and editing recurrences is disabled.


5. Edit a Recurrence

Click the pencil icon on the dashboard to edit an existing recurrence.

What can be changed

  • Title, description, visibility (with date token support — see §4)
  • Thumbnail
  • Early publication (hours)
  • All advanced YouTube settings

What CANNOT be changed

  • The frequency, start/end dates, and live time — these parameters define which occurrences exist and cannot be changed after creation.

Propagating changes

Changes are applied to all unlocked future lives linked to this recurrence. Past lives (whose scheduledAt has already passed) are never modified.

If the title or description contains date tokens (e.g. {day}), they are re-resolved for each live using each occurrence's own date during propagation.

"Unlocked future lives" means: lives whose date is in the future AND whose "Locked" checkbox is not checked. See §8 — Locking.

Include locked lives

At the bottom of the form, a "Also update locked lives" checkbox lets you force propagation to locked lives. Unchecked by default — use with caution if you have specially configured individual episodes.

Thumbnail on edit

The thumbnail is sent to lives that already have a youtubeBroadcastId (i.e., whose YouTube creation is complete). Lives still waiting to be created do not receive the updated thumbnail — they will use the old thumbnail or none.


6. Delete a Recurrence

Click the trash icon on the dashboard. A confirmation modal appears.

What is deleted

  • The recurrence rule itself
  • All associated unlocked future lives
  • For each deleted live that already had a YouTube broadcast: a deletion task is sent to the YouTube API

What is NOT deleted automatically

  • Past lives (whose date has passed) — they are kept in the database
  • Locked lives (unless you check the dedicated checkbox)

"Also delete locked lives" checkbox

By default, locked lives are kept even if their parent recurrence is deleted. Check this box to include them in the deletion.

Warning: Deletion is permanent. Broadcasts deleted on YouTube cannot be restored from LiveScheduler.


7. The Calendar

The calendar is displayed below the recurrence table on the dashboard. It shows all your scheduled lives.

Available views

  • Month (default view on large screens) — monthly grid, one block per live
  • Week — hourly grid over 7 days
  • List (default view on mobile) — chronological list

Navigate between views using the tabs at the top right of the calendar. Use the arrows to change the period.

Event colors

Color Meaning
Gray Past live (date passed)
Blue Scheduled — YouTube creation deferred (early publication delay not yet reached)
Orange Pending — YouTube sync not yet performed
Green Synced — the broadcast exists on YouTube
Red Sync error

Colors update in real time without reloading the page, as asynchronous tasks are executed.

Clicking on a live

Clicking on a calendar event opens the live modal. It shows:

  • Header: title, "Locked" badge if applicable, formatted date and time
  • YouTube link (top right): visible only if the broadcast has been created on YouTube
  • Content: description and visibility of the live
  • Footer: status badge, Sync / Delete / Edit buttons

8. Manage an Individual Live

View details

The default (read-only) view shows the live's description and visibility. The title, date, and status are in the modal header and footer.

Edit a live

Click "Edit" in the modal. A form appears with:

  • Title, Description, Visibility — individually editable
  • Thumbnail — you can replace the thumbnail for this live only
  • Early publication (hours) — you can change the delay for this live only
  • "Lock this live" checkbox
  • Advanced YouTube settings — all accessible

Click "Save" to confirm. Changes are sent to YouTube asynchronously (the status turns orange then returns to green once synced).

Note: Editing an individual live does not affect the other lives in the same recurrence.

Publish now (Scheduled lives)

A Scheduled live (blue) has its YouTube creation deferred. If you want to create the broadcast on YouTube immediately — without waiting for the scheduled delay to elapse — click "Publish now" in the modal footer.

Effect: the live immediately switches to Pending status (orange) and a YouTube broadcast creation task is dispatched right away. The usual flow then applies: the live turns green once created.

"Publish now" is only visible for lives with Scheduled status (blue).

Locking a live

A locked live is protected against propagation of changes from its parent recurrence.

When to lock?

  • When you've customized a special episode (different title, unique thumbnail, specific options)
  • When you don't want a bulk edit to overwrite this live

Automatic behavior: When you modify a field in the live edit form (other than the Locked checkbox itself), the checkbox automatically checks to signal that this live will diverge from its series. You can uncheck it if you don't want to lock.

Unlock: Simply uncheck the "Lock this live" checkbox and save. The live will become editable again via actions on the parent recurrence.

Delete a live

Click "Delete" in the modal. Confirmation is requested. The deletion:

  1. Removes the live from the database
  2. Deletes the corresponding broadcast on YouTube (if youtubeBroadcastId existed)

Warning: This action is irreversible. The YouTube broadcast is permanently deleted.


9. Sync from YouTube

Syncing allows you to pull back into LiveScheduler the changes you made directly in YouTube Studio (title, description, visibility, advanced options).

Typical use cases

  • You changed the title of a broadcast directly on YouTube and want the application to reflect that change
  • You deleted a broadcast on YouTube and want LiveScheduler to sync accordingly
  • You want to ensure the local state is consistent with YouTube

Global sync (all lives)

From the dashboard, click "Sync from YouTube". A confirmation modal summarizes the behavior:

  1. YouTube data overwrites local data (title, description, visibility, advanced options)
  2. If a live was modified on YouTube, it is automatically locked
  3. Lives in pending (WAITING) or error (ERROR) status are not affected
  4. If a broadcast no longer exists on YouTube, the live is deleted locally

Click "Sync" to start. A confirmation message indicates the number of lives affected. The calendar updates progressively — follow the colors.

Individual sync (a single live)

In the live modal, if the live's status is "Synced" (green) and it has a youtubeBroadcastId, the "Sync from YouTube" button is visible. Click it to sync only this live.

Sync eligibility

Only lives with UP_TO_DATE status (synced, green) and a YouTube identifier can be synced. Lives that are pending, in error, or currently syncing are excluded.


10. Subscription and Billing

Access the billing page via "Billing" in the navigation.

Free Trial

All new accounts start with a 30-day free trial, no credit card required. During the trial, you get full access to all features, with one constraint: the end date of your recurrences cannot exceed 30 days from today.

Expired account

When the trial ends, if you have not subscribed, your account becomes read-only:

  • Viewing the calendar and lives: accessible
  • Deleting lives and syncing from YouTube: accessible
  • Creating and editing recurrences: disabled

To regain full access, subscribe from the Billing page.

Subscription

The subscription removes the 30-day planning horizon constraint and ensures continuous access to all features, with no limit on the number of recurrences or lives per rule (up to 100 occurrences per rule).

Pricing

Plan Price Savings
Monthly €5/month
Annual €50/year 2 months free

Subscribe

  1. Go to Billing
  2. Choose your preferred billing period (Monthly or Annual)
  3. Click the corresponding button — you are redirected to Stripe Checkout
  4. Enter your payment information on the secure Stripe page
  5. After payment, you are automatically redirected back to the application with your subscription activated

Important: The payment form opens in a new tab / redirects to Stripe. If nothing happens, check that your browser is not blocking redirects.

Manage my subscription

For subscribers, the "Manage my subscription" button opens the Stripe billing portal. There you can:

  • Switch billing period (monthly ↔ annual) — the change is immediate with prorating
  • Update your payment method
  • Download your invoices
  • Cancel your subscription

Subscription statuses

Badge Meaning
Trial · X days Free trial in progress, X days remaining
Active Active subscription
Payment overdue Payment failed — your access is temporarily maintained. Update your payment method via "Manage my subscription" as soon as possible.
Trial expired Trial ended, read-only access. Subscribe to regain full access.

Access when payment is overdue: A user with an overdue payment retains access until Stripe cancels the subscription (typically after several attempts over a few days). Update your payment method promptly to avoid a service interruption.


11. Delete Your Account

Account deletion is available at the bottom of the Billing page, in the "Delete account" section.

What is deleted

  • All your recurrence rules
  • All your scheduled lives
  • Your personal data (email, OAuth tokens)
  • Your subscription (if active — immediate cancellation)
  • YouTube broadcasts for your future lives (if already created on YouTube)

What is NOT deleted

  • Past broadcasts on YouTube — a live whose date has already passed remains on your YouTube channel. It happened in the real world and belongs to your channel's history. You can delete it directly from YouTube Studio if you wish.

Procedure

  1. Click "Delete my account"
  2. A confirmation modal appears — read it carefully
  3. Click "Yes, delete my account" to confirm

This action is permanent and irreversible. It is not possible to recover your data after deletion.


12. Frequently Asked Questions

Sign in and account

Q: Can I use LiveScheduler with multiple YouTube channels? A: No, a LiveScheduler account is linked to a single Google/YouTube account. To manage multiple channels, you need to create a separate account for each.

Q: Can I change my Google account? A: Not directly. The only way to change accounts is to delete your LiveScheduler account and create a new one with the other Google account.

Q: Does the application use my email address? A: Your email address is retrieved from Google for internal identification purposes only. LiveScheduler does not send you emails.


Date tokens in titles

Q: Can I use tokens in an individual live's title (from the calendar modal)? A: No. Tokens are only resolved when a recurrence is generated or when recurrence changes are propagated. If you type {day} directly in an individual live's edit form (calendar modal), the token will be stored literally, without being replaced.

Q: In which language are day and month names generated? A: In your interface language at the time of generation (French, English, or Spanish, based on your saved profile preference). To change the language of your titles, update your language preference using the selector in the top right, then regenerate your lives.

Q: A token I used doesn't seem to work — what should I check? A: Verify the exact spelling of the token (lowercase, curly braces). Valid tokens are: {day}, {day_short}, {date}, {date_padded}, {month}, {month_short}, {month_number}, {year}, {year_short}, {time}. Any unrecognised token is left as-is in the title (no error is raised).


Recurrences and generation

Q: Can I change the frequency or dates of a recurrence after creation? A: No. The frequency, start/end dates, and live time are fixed at creation. If you need to change these settings, delete the recurrence and create a new one.

Q: Why weren't all my lives generated? A: The 100 occurrences per rule limit was reached — generation stops at 100 even if the date range would allow more.

Q: How long does it take for broadcasts to appear on YouTube? A: Broadcasts are created asynchronously by background workers. Generally, the operation takes a few seconds to a few minutes depending on load. You can track progress using the calendar colors (orange = pending, green = created).

Q: What happens if a broadcast creation fails? A: The live switches to Error status (red). LiveScheduler automatically retries up to 3 times. If all attempts fail, the live remains in error. Common causes: expired or revoked OAuth token, exceeded YouTube quota, network issue. Try signing out and back in with Google if the problem persists.


Live statuses

Q: What do the different statuses mean?

Status Color Meaning
Scheduled Blue YouTube creation is deferred — the early publication window has not yet been reached
Pending Orange The create/update task on YouTube has not yet been processed
Synced Green The broadcast exists on YouTube and matches the local state
Error Red An error occurred during synchronization with YouTube
Sync from YouTube pending Orange A sync from YouTube is being processed

Q: My live has been in Error for a long time — what should I do? A: Try signing out and back in with Google to renew the OAuth token. If the problem persists, check that your YouTube Data API quota is not exhausted (managed from the Google Cloud Console).


Locking

Q: What is the difference between a locked and an unlocked live? A: An unlocked live is automatically updated when you edit the parent recurrence. A locked live is skipped during those updates — its settings remain as you individually configured them.

Q: The "Locked" checkbox checked itself — is that normal? A: Yes. When you modify a field in the live edit form, the checkbox automatically checks to indicate that this live will diverge from its series. You can uncheck it manually if you don't want to lock this live.

Q: Can I edit a locked live? A: Yes. Locking does not prevent individual editing — it only protects against automatic propagation from the parent recurrence. You can edit all fields of a locked live normally.


Delayed publication

Q: Why are some of my lives blue on the calendar? A: A blue live has Scheduled status. It is waiting for its early publication window to be reached before the YouTube broadcast is created. This happens when you configured the "Early publication (hours)" field and that delay has not yet elapsed.

Q: How long does it take for a Scheduled live to turn orange? A: A background scheduler checks every minute for Scheduled lives whose publication window has been reached. The transition from blue to orange (and the YouTube broadcast creation) happens automatically within one minute.

Q: Can I force immediate creation of a Scheduled live? A: Yes. Click on the live in the calendar to open the modal, then click "Publish now". The live immediately switches to Pending (orange) and the broadcast is created on YouTube right away.

Q: Can I sync a Scheduled live from YouTube? A: No. The "Sync from YouTube" button is not available for Scheduled lives — the broadcast does not yet exist on YouTube. Wait until the live transitions to Synced (green) to use sync.

Q: What happens if I edit the "Early publication" delay on an existing Scheduled live? A: The scheduledPublishAt date is recalculated from the new delay. If the new window has already passed, the live immediately transitions to Pending on the next scheduler pass.


Sync from YouTube

Q: Does syncing from YouTube overwrite all my data? A: It overwrites the title, description, visibility, and all advanced YouTube options. If a live was modified on YouTube, it will be automatically locked after syncing.

Q: Are thumbnails synced? A: No. Thumbnails are not synced (the API returns a URL, not the original file). If you changed a thumbnail on YouTube, that change is not reflected in LiveScheduler.

Q: What happens if a broadcast was deleted on YouTube? A: During a sync, if a broadcast no longer exists on YouTube, the corresponding live is deleted from LiveScheduler.

Q: Can I sync a live that is in Error? A: No. Only lives with Synced (green) status can be synced from YouTube. Lives that are pending or in error are excluded.


Thumbnails

Q: Is the thumbnail stored on LiveScheduler's servers? A: No. The thumbnail is sent directly to YouTube and deleted from LiveScheduler's servers after a successful upload. If the upload fails permanently (after 3 attempts), the file may temporarily remain on the servers — but it is not publicly accessible.

Q: My thumbnail isn't showing on YouTube — why? A: Thumbnail upload is a separate operation from broadcast creation, processed asynchronously. There may be a delay. If the thumbnail still doesn't appear after a few minutes, check whether an error occurred (the live may be in Error status). You can re-upload the thumbnail by editing the live individually.


Billing

Q: Can I cancel at any time? A: Yes. Via "Manage my subscription" on the Billing page. Cancellation takes effect at the end of the current billing period.

Q: My subscription is cancelled — what happens to my data? A: Your data remains accessible in read-only mode. You can still view your calendar, delete lives, and sync from YouTube, but you can no longer create or edit recurrences. To regain full access, you can resubscribe.

Q: I subscribed to the monthly billing and want to switch to annual — how does that work? A: From the Billing page, click "Manage my subscription" then select "Switch plans" in the Stripe portal. The switch is immediate with prorating: you only pay the difference for the remainder of the current period.

Q: A payment failed — will I lose access immediately? A: No. In case of a payment failure, your account switches to Payment overdue status and you retain access until Stripe cancels the subscription (typically after several attempts over a few days). Update your payment method via "Manage my subscription" as soon as possible.


Account and data

Q: What data does LiveScheduler store about me? A: Email, account name, Google OAuth tokens (access token + encrypted refresh token), detected timezone, language preference, Stripe billing data (customer ID, subscription ID, status). No credit card data is stored — it is managed exclusively by Stripe.

Q: Are my YouTube broadcasts deleted if I delete my account? A: Only future lives — LiveScheduler deletes upcoming broadcasts from YouTube when the account is deleted. Past lives are never deleted from YouTube: they belong to your channel's history and remain accessible from YouTube Studio.