OverlayHub / Documentation

Log In

Welcome! This page covers everything you need to run overlays on your stream — from your first login through every widget available. If you're brand new, start with Getting Started right below and work down; if you're back for something specific, jump straight to it from the list.

Contents 1. Getting Started 2. Your First Overlay 3. Widget Catalog 4. Twitch Integration (Alerts & Chat) 5. Media Library 6. Live Q&A 7. Free vs Premium 8. Account & Security 9. Building Your Own Widget (Custom HTML) 10. Pushing Your Own Data (API for bots) 11. Troubleshooting

1. Getting Started

Go to /auth/login and click Continue with Twitch. That's it — your display name, a random overlay-URL identity, and a Q&A link are all created automatically on first login. There's nothing to fill in.

If you were given a username and password instead of Twitch login (rare — this is normally only used for the platform's super admin account), you'll fill in a display name once and you're in.

2. Your First Overlay

  1. From your dashboard, type a name under New Overlay and click Create Overlay.
  2. Click Edit on the new overlay card to open the canvas editor.
  3. Pick a widget from the dropdown and click Add Widget. Drag it into position, drag the small handle in its bottom-right corner to resize it, and click it to open its settings panel on the right.
  4. Copy the OBS Browser Source URL from the top of the editor.
  5. In OBS: Sources → + → Browser, paste the URL, and set the width/height to match your overlay's canvas size (1920×1080 by default).

Changes you make in the editor apply instantly — no need to refresh the Browser Source in OBS while designing, though a refresh never hurts if something looks stale.

3. Widget Catalog

WidgetTierFed byWhat it does
Countdown TimerFreeSet-and-forget, or push a new time via the APIA clock counting down to a duration you set.
Goal BarFreeTwitch alerts (auto) or manual pushProgress bar toward a sub/follow/donation goal.
Live PollFreeTwitch chat (!1–!4)Up to 4 options with live vote bars.
LeaderboardFreeTwitch chat (auto) or manual pushTop chatters by message count this session.
Now PlayingFreeManual push onlyCurrent track display — no built-in music source.
ImageFreeYou set it in configDisplays an image from your Media Library.
Live Q&AFreeQ&A moderation panelShows whichever question you've marked "live."
Alert BoxPremiumTwitch alerts (auto) or manual pushPop-up card for follows/subs/cheers/raids, with optional sound.
Chat OverlayPremiumTwitch chat (auto)Scrolling ticker of recent chat messages.
Emote WallPremiumTwitch chat (auto)Emotes people actually use in chat float across the screen.
Custom HTML/CSS/JSPremiumWhatever you buildA sandboxed iframe for anything not covered above.

"Auto" means it works the moment you've linked Twitch — nothing else to configure. "Manual push" means something (a bot, a script, or you) needs to call the API described in section 10.

4. Twitch Integration (Alerts & Chat)

Linking Twitch turns on two independent systems:

Follow/Sub/Cheer/Raid Alerts (EventSub)

Twitch's webhook system tells OverlayHub the moment someone follows, subscribes, cheers, or raids. This feeds the Alert Box and Goal Bar widgets. Configure which events trigger them in each widget's own config panel:

Live Chat

OverlayHub also reads your chat directly (read-only, no bot account) to power Live Poll, Leaderboard, Chat Overlay, and Emote Wall. This is always on once Twitch is linked — nothing to turn on separately.

Poll voting: viewers type !1, !2, !3, or !4 in chat, matching whichever option numbers you've filled in on the poll's config panel. Each viewer's vote counts once per poll — use Reset Poll Votes in the config panel to start over.

5. Media Library

Go to Media Library from your dashboard to upload images (PNG/JPEG/GIF/WEBP/SVG) and sounds (MP3/WAV/OGG), up to 25MB per file. Click Copy URL on anything you've uploaded, then paste that URL into:

Your total storage is capped by your plan (see section 7) — the library page shows how much you've used.

6. Live Q&A

Every account gets a public question page at /ask/<your-link> — find your exact link at the top of Q&A Moderation. Share it in your Discord, panels, or chat. Viewers submit anonymously or with a name, no login required.

From the moderation panel: Approve a question, then Go Live to push it to any Live Q&A widgets on your overlays instantly. Clear from Overlay hides it again. Only one question is live at a time.

7. Free vs Premium

FreePremium
Overlays225
Widgets per overlay640
Storage50MB1000MB
Watermark on overlayYesNo
Alert Box, Chat Overlay, Emote Wall, Custom HTML—Included

Contact the platform admin to upgrade your account.

8. Account & Security

Everything below lives on your Settings page:

9. Building Your Own Widget (Custom HTML)

The Custom HTML/CSS/JS widget (Premium) is the escape hatch for anything not covered by a built-in widget. It renders your HTML/CSS/JS inside a sandboxed iframe on your overlay. To receive live updates (e.g. from a manual API push), your JS can call:

onUpdate(function(payload) {
  // payload is whatever JSON was pushed via /api/events
  document.body.textContent = JSON.stringify(payload);
});

10. Pushing Your Own Data (API for bots)

Any widget instance can be updated directly with a simple API call — useful for your own bots, scripts, or automations. Find your api_key on the Settings page, and each widget instance's ID by hovering it in the canvas editor (visible in the block's data as you configure it).

POST /api/events
Content-Type: application/json

{
  "api_key": "your_api_key",
  "widget_instance_id": 42,
  "payload": { "title": "New Follower!", "body": "SomeViewer just followed" }
}

The shape of payload depends on the widget type — matching what that widget's own automatic feed sends is always a safe bet (e.g. Goal Bar takes {"delta": 1} or {"current": 50}; Alert Box takes {"title": "...", "body": "..."}). This endpoint is rate-limited to 120 calls/minute per API key.

11. Troubleshooting

My alerts stopped firing

Check your dashboard for a banner naming which alert types disconnected — this happens if you revoke OverlayHub's access on Twitch's side. Click Reconnect Twitch Alerts to restore it.

Chat-powered widgets (Poll, Leaderboard, Chat Overlay, Emote Wall) aren't updating

These read your live chat directly and reconnect automatically — if they've been idle a long time, try leaving and re-entering your own stream chat, or contact the platform admin if it persists.

My overlay isn't showing in OBS

Confirm you copied the full URL from the editor's toolbar, and that you haven't since clicked Regenerate URL (which invalidates the one OBS still has cached).

A widget says it needs Premium

See section 7 — contact the platform admin to upgrade.