TOPIC BAR · SETUP GUIDE

How to add a topic bar to OBS

Updated August 21, 2026 · 9 min read · Works with OBS, Streamlabs, Meld & evmux

The Topic Bar is a horizontal talking-points strip that pins to the top or bottom edge of your stream — the debate-show look. Your rundown sits across the bar as angled cells; the one that's live fills with your accent color, its title swells and breathes, and a slow light sweep crosses it every ten seconds so viewers always know which segment you're on.

Its signature move is the media reveal. Highlight a topic and a panel opens outward from that exact cell — anchored under (or over) it, not centered on screen — carrying a photo, GIF, video clip or a paragraph of context, with the text wrapping around the media newspaper-style. Collapse it and the bar goes back to being a thin strip.

This guide covers the whole app: the OBS setup, every setting in all three tabs, attaching Graphics to a topic so full lower thirds fire on their own, and how show profiles let one channel run three different shows. The video above walks the app end to end on camera — it was recorded before the current three-tab settings layout, so trust the steps below for exact labels.

What you'll need

  • OBS Studio, Streamlabs, Meld, evmux or XSplit
  • A StreamSlayers plan with Topic Bar — view plans
  • Optional: images, GIFs or short MP4s for your reveals (4 MB per file if you upload; any size if you paste a hosted URL)

Launch Topic Bar and copy your overlay URL

Sign in and click LAUNCH on the Topic Bar tile in your dashboard, then hit COPY next to the overlay URL at the top of the settings page. It looks like streamslayers.com/topicbar/your-user-id and it never changes — one URL for every show you ever build.

One overlay URL, permanent. Everything else on this page changes what it renders.

Add it to OBS as a full-screen browser source

  1. Sources → +Browser, name it "Topic Bar".
  2. Paste the URL.
  3. Set width 1920 and height 1080, then OK.

Use the full canvas even though the bar is only ~90 px tall. The bar pins itself to whichever edge you pick, and the media reveal needs room to open outward from it — a source cropped to bar height would clip every reveal. Everything outside the bar and the open reveal stays transparent, so drop the source at the top of your scene and leave it there.

From here on, nothing you change requires touching OBS again. Settings reach the overlay instantly over a WebSocket connection — no browser-source refresh, no cache-busting, no "why is it still showing the old topic".

Shape the bar: edge, height, reveal size

Open the Bar Settings tab. Four controls decide the whole silhouette:

  • Show Topic Bar — the master switch. Off hides the bar and every reveal without deleting anything, which is what you want between segments or during a full-screen replay.
  • Bar EdgeTOP makes it an upper-third bar and reveals open downward; BOTTOM makes it a lower-third bar and reveals open upward. Bottom is the default and the safer pick if you run chat or a face cam in the upper corners; top keeps the lower third free for name plates.
  • Bar Height — 64 to 160 px, resets to 96. Below ~80 px two-line topic titles start to feel cramped; 90–110 px is the sweet spot for a four-to-six topic rundown.
  • Media Reveal Height — 180 to 520 px, resets to 320. This is the single most consequential slider in the app: the panel's padding, its subtitle size and its media frame all scale off it. A 200 px reveal reads as a caption strip; a 450 px reveal reads as a full graphic package.

Show LIVE Badge adds a block at the left end of the bar, filled with your accent color, carrying a pulsing white dot and the word LIVE in black — useful on a debate show, redundant if you already have a LIVE bug elsewhere in the scene.

Bar Settings — edge, bar height, reveal height. The reveal height drives every font and pad inside the panel.

Brand the corners with badges

The CORNER BADGES card gives you two independent blocks that bookend the topics: Left Badge — Channel and Right Badge — Sponsor. Each takes an uploaded logo plus Text Segments, and each segment has its own color — so "STREAM" can be white and "SLAYERS" your brand cyan in the same badge. Segments render with no automatic gap, so include a trailing space in the text if you want one.

— Inline lays the segments side by side; ⫶ Stack puts them on two lines, which is how you fit a long channel name into a narrow badge. Logo Position flips the image to the left or right of the text.

Each badge gets its own Animation None, Pulse (a subtle breathe) or 3D Flip (a Y-axis rotation) — with an Every … SEC interval from 0.5 to 120 seconds. Pulse defaults to 2.6 s, 3D Flip to 7 s. The settings are per-badge for a reason: a sponsor block flipping once a minute reads as paid placement, the same block flipping every 7 seconds reads as a distraction.

Build the rundown — up to 8 topics

Switch to the Topics tab. The cap is 8 topics, and that is a design limit, not an arbitrary one: the cells split the bar width evenly, so nine short segments would leave each one too narrow to read at broadcast distance. Four to six is where the bar looks best.

  • Title — what shows in the cell. Press Enter for a line break, e.g. LAKERS / ROCKETS or SPRING TRAINING / UPDATES. The cell clamps at two lines and it's rendered in caps, so write short.
  • Subtitle — the body copy inside the reveal, hard-capped at 240 characters with a live counter that turns orange past 200. Past 240 the text overflows the panel even at maximum reveal height, which is why the field simply stops you.
  • Show Reveal — turn it off and this topic never expands. It just sits in the bar as a marker. Perfect for a "COMING UP" or "OPEN PHONES" segment with nothing to show.
  • Expand For (sec) — auto-collapses the reveal after N seconds while the topic stays highlighted in the bar. Set 8–12 for a photo you want to flash and clear; leave it at 0 to hold the panel open for the whole segment.

Under Media (optional) there are four rows — Image, GIF, Video, Sound — and each row takes either an Upload or a pasted URL. The three visual rows are mutually exclusive: setting one clears the others, so you can never end up with a stale image fighting a new clip. Sound is independent and fires alongside whatever visual is set, which is how you get a stinger under a topic change.

The Video row accepts an MP4 or WebM URL or a YouTube link — paste a watch URL and it converts to an embed automatically, muted and looping by default. Media renders in a 16:9 frame floated to the right of the panel at up to 45% of its width, with your subtitle wrapping around it. Uploads are capped at 4 MB per file; anything bigger, host it and paste the URL instead.

Click ADD TOPIC and it drops into the list below, where ↑ ↓ reorder the rundown, Edit reopens the form, and Highlight puts it on air right now.

A topic is a title plus optional reveal content. Image, GIF or video — one visual per topic, plus independent audio.

Attach Graphics that fire on their own

This is the part most people miss. Every topic has an Auto-Graphics block that links real graphics from the Graphics app to that segment. Click + Add graphic and you get three fields: a dropdown of every graphic you've built, Delay (s) — how long after the topic goes live before it animates in — and For (s) — how long it stays, where 0 means until you switch topics.

Add as many as the segment needs. A postgame topic might run a matchup title at 0 s for 8 s, a player stat card at 12 s for 10 s, and a sponsor plate at 40 s for 15 s — you highlight the topic once and the rest of the segment stages itself while you talk.

Two details worth knowing. First, these drive the real on-air state of the Graphics app, not a private copy — so the graphic appears in your Graphics browser source at the position you designed it, and your Graphics Stream Deck keys or Command Center buttons can still hide it manually. Second, if two consecutive topics share the same graphic, it stays on screen through the switch instead of flickering off and re-animating.

If the block reads "No graphics built yet" instead of offering a dropdown, go build one in the Graphics app first — the two apps are separate browser sources, and the Topic Bar only ever points at graphics you already own.

Auto-Graphics — stack several per topic, each with its own delay and on-screen duration.

Build a rundown from live headlines

Below the topic form, IMPORT FROM HEADLINES turns live sports wire copy straight into topics. Toggle the league chips — MLB, NBA, NFL and NHL are on by default, with 20 leagues available including WNBA, NCAAF, NCAAB, MLS, Premier League, Champions League, UFC, F1, PGA, NASCAR and more — then hit Load headlines.

Each result shows a thumbnail, the headline, a summary and how long ago it published. Click Add and it becomes a topic: headline as the title, summary as the subtitle, wire photo as the reveal image. Anything already in your list shows ✓ Added. Fill the bar with tonight's stories in seconds, then edit the titles down to something short enough for a cell.

Color it, then save the whole show as a profile

The Appearance tab is four colors and two sizes. There is no theme picker here on purpose — the bar has one strong look (angled cells, heavy black keylines, a halftone tile texture) and your colors drive it. Background tints the inactive cells, Text sets the resting title color, Accent is what the live cell fills with, and Highlight Color (overrides accent) is exactly that — leave it empty and the accent drives everything; fill it in and it takes over every accented element at once: the live cell, the LIVE badge, the reveal's thin accent rail and the countdown digits. Topic Title Size (14–28 px) sets the type in the bar cells, and the live cell renders 2 px larger than the rest. Subtitle Size (10–22 px) is only a baseline — the reveal scales it up in proportion to your reveal height. The reveal itself never repeats the title; it's already in the cell right above (or below) it.

Then use SHOW PROFILES at the top of the page. Hit + Save As New and the entire bar — topics, attached graphics, badges, colors, edge, heights — is captured under a name. Build "Yankees Postgame", "NBA Debate" and "Friday Mailbag" once, then Load the right one before each show and the bar reconfigures in a click.

Double-click a profile name to rename it. Overwrite updates the loaded profile in place after you tweak it. Profiles live in your browser, so use ↓ Export to pull them all down as a JSON file and ↑ Import to load them on another machine — that's also your backup if you ever clear site data. ↺ Reset wipes the current bar back to defaults without touching your saved profiles.

Run the show

On air, the only move is Highlight. Click it on a topic and that cell fills with your accent color, the reveal opens outward from it — upward on a bottom bar, downward on a top bar — any attached audio plays, and the Auto-Graphics timers start. Click Live on the same topic to clear it, or highlight a different one to move on.

The field labelled Auto-Advance (sec) is a segment clock, not an autopilot. Set 300 on a topic and the live cell grows a striped progress bar, a NEXT countdown appears at the right end of the bar, and a short buzzer sounds when it hits zero. The bar does not jump to the next topic by itself — the clock tells you and your audience that a segment is running long; you still make the call.

You don't need this page open to run the show. The Command Center gives you the whole app as a board — Show / Hide, Prev, Next (both wrap around the rundown), Reveal / Collapse to force the media panel shut mid-segment, a top/bottom edge selector, and a button per topic. The same commands map to physical keys through the StreamSlayers Stream Deck plugin (v1.18.0), so a producer can drive the rundown from hardware while you talk.

On air — the live cell fills with the accent color and the reveal opens anchored to that cell, not centered on screen.

Topic Bar or Topics Panel?

They are separate apps with separate overlay URLs, and plenty of shows run both. The difference is shape and capacity. The Topic Bar is horizontal, caps at 8 topics, and is built around one segment at a time expanding into a media reveal — it's a broadcast rundown strip. The Topics Panel is a vertical sidebar that shows up to 10 topics at once and keeps the full list readable the whole time — it's a show agenda your audience can follow.

Rule of thumb: if you want viewers to see where you are, use the bar. If you want them to see what's coming, use the panel. If you want both, run the panel down one side for the agenda and the bar along the bottom for the segment currently on air — they hold independent topic lists, so the panel can carry your ten-item rundown while the bar carries tonight's five headline beats.

Troubleshooting

The bar isn't showing at all. Check the Show Topic Bar toggle in Bar Settings first — it's also flipped by the Command Center and Stream Deck, so it can be off from a key you pressed last stream. Then confirm the browser source is the current URL and sized 1920×1080, and that no scene item sits above it.

The reveal opens but the media is cut off. Raise Media Reveal Height. Portrait and square images fit inside the 16:9 frame rather than filling it, so tall photos will letterbox — crop them to landscape before uploading if you want them to fill the frame.

The reveal closed on its own mid-segment. That's Expand For (sec) on that topic, or someone hit Reveal / Collapse in the Command Center. Set Expand For back to 0 to hold the panel open for as long as the topic is highlighted.

A YouTube clip won't play in a reveal. Paste a link to a single video — a watch URL, a youtu.be short link, or a Shorts URL all resolve; a playlist URL does not, because there is no one video id in it. Also remember some videos have embedding disabled by their owner. A direct MP4 or WebM URL always works and starts faster.

An upload was rejected as too large. The cap is 4 MB per file, because the media is embedded directly in your settings. Host the file anywhere that serves a direct link and paste the URL into the same row instead — there's no size limit on hosted media.

My topics vanished after switching browsers. Your topics and settings live on the server and follow your account, but show profiles are stored in the browser. Use ↓ Export on the old machine and ↑ Import on the new one.

FREQUENTLY ASKED QUESTIONS

How is the Topic Bar different from the Topics Panel?

They are separate apps with separate overlay URLs and separate topic lists. The Topic Bar is a horizontal strip pinned to the top or bottom edge, capped at 8 topics, built around one live segment expanding into a media reveal. The Topics Panel is a vertical sidebar that holds up to 15 topics and keeps the whole agenda readable. Use the bar to show where you are, the panel to show what's coming — or run both.

What's a media reveal?

Highlight a topic and a panel opens outward from that exact cell — anchored under it if the bar sits on the bottom edge, over it if the bar sits on top — carrying an image, GIF, video or a paragraph of context, with the text wrapping around the media newspaper-style. Its height is set once in Bar Settings (180-520 px) and every font and pad inside scales off it. Each topic can auto-collapse its reveal after N seconds while staying highlighted in the bar, or skip the reveal entirely.

Does the Topic Bar advance through topics by itself?

No. The per-topic field labelled Auto-Advance (sec) runs a segment clock, not an autopilot: the live cell grows a striped progress bar, a NEXT countdown appears at the right end of the bar, and a short buzzer sounds at zero. You still choose when to move on — by clicking Highlight, by the Command Center's Prev/Next buttons (which wrap around the rundown), or from a Stream Deck key.

Can graphics appear automatically with a topic?

Yes. Every topic has an Auto-Graphics block where you attach graphics you built in the Graphics app, each with its own Delay (seconds after the topic goes live) and For duration (0 = until you switch topics). They drive the real on-air state of the Graphics app, so they render in your Graphics browser source at their designed position and your Graphics Stream Deck keys can still hide them. A graphic shared by two consecutive topics stays on screen through the switch instead of re-animating.

What canvas size should the browser source be?

Add it full-screen at 1920x1080. The bar is only around 90 px tall and pins itself to your chosen edge, but the media reveal opens outward from the bar and needs the rest of the canvas — a source cropped to bar height would clip every reveal. Everything outside the bar and the open reveal stays transparent.

READY TO PUT TOPIC BAR ON YOUR STREAM?

Choose a paid plan · no contracts · cancel anytime

View plansTopic Bar features