For streamers on Twitch, YouTube, Kick and anywhere else
Put a giveaway wheel, a marble race, dice or a countdown right on your stream, over your camera or your game, and run it from a panel inside OBS.
Running a giveaway? How to keep it fair and trusted
Background: a still from Sintel, Β© copyright Blender Foundation | durian.blender.org (CC BY 3.0).
Most streamers run a giveaway the same way: open a picker in a browser, capture the window, and switch to that scene while it spins. Viewers get a web page, with its menus and buttons, sitting where the stream used to be.
The stream overlay works differently. Ten of the tools have a version made for an OBS Browser Source: the spinning wheel, marble race, slot machine, mystery box and claw machine, which draw from your names, plus dice, a coin, a number picker, a word generator and a countdown timer. The background is see-through, so the wheel or the dice sit on top of your camera or your game like any other overlay. Nothing on it is a button, and it never shows ads. When the result lands, a large card comes up over the stream so chat can read it, then clears itself after a few seconds.
You run it from a control panel that docks inside OBS, next to your scenes and sources. Choose the tool at the top, paste your names there (or set the dice, the range or the time), press the button, and remove each winner before the next draw. A Stream Deck or Streamer.bot can start a draw too. Every pick uses the cryptographic random number generator built into the browser, the same as everywhere else on this site.
About five minutes, once
Open any of the ten on a computer and add your names, or set the dice, the range or the time. Click Use in OBS, next to the fullscreen button above it, and copy the stream link. The link carries your names or settings. In a narrow browser window the button can be hidden, but the dock in step 3 builds the link too.
In OBS, click + under Sources, choose Browser, and paste the link as the URL. Set the width and height to your canvas size, usually 1920 by 1080, so the picker can sit in any corner of the screen. Leave the Custom CSS box as OBS fills it in.
Open View, then Docks, then Custom Browser Docks. Call it Picker, use funrandompickers.com/embed/dock as the URL, and click Apply. Choose the tool it controls at the top. The dock keeps your names and settings between streams, sends the names to the overlay, and has buttons to draw, remove the winner and clear the card.
The dock also builds the stream link for you: the size and corner, how long the result card stays up, whether it plays sound, and that tool's own settings, like the dice or the countdown's time. Copy the link and paste it into the Browser Source again. All of it lives in the link, so each scene can have its own.
Press the main button in the dock. Without the dock, right-click the source, choose Interact, and use the keyboard: Space draws, R removes the last winner, Esc clears the card (and stops a running countdown), P replays the finish of a marble race or pauses a countdown, and N lays a new marble track.
The best picker for each situation
Everyone knows how a wheel works, so nobody in chat needs it explained. It works at any size: full screen for the main giveaway, or tucked into a corner while you keep playing.
Example
Set the size to 40% and the position to bottom right, so the wheel sits beside your face cam. Spin it from the dock at the end of each round to pick who chooses the next game.
A race is something chat can watch and cheer for. There is a countdown at the start, live standings under the track, and a slow-motion photo finish when it is close. It turns a giveaway into a short segment of the stream.
Example
For a follower giveaway, load the names and start a Quick race. After the winner card, press Replay the finish in the dock to show the finish again in slow motion.
Three reels stop one after another, so the suspense comes in steps. It suits a prize reveal, and it looks nothing like the wheel, which helps if you draw often.
Example
Use the slots for small prizes during the stream and save the marble race for the main giveaway, so regulars see something different each time.
A box opens and one name rises out of it. It is one of the quickest, which suits picks you make again and again, like who joins the next match.
Example
On a viewer games night, open the box to pick who plays next, then remove them in the dock so everyone in the queue gets a turn.
The claw drops into a pile of named balls and lifts the winner out. The cabinet is solid rather than see-through, so it looks like an arcade machine standing on your screen.
Example
Put the claw in a corner of your Just Chatting scene and grab a winner each time you hit a subscriber goal.
For tabletop games on stream, the 3D dice roll right over your camera, and the card shows the total and each die, with a call-out for a natural 20 or doubles. Chat sees every roll as it happens.
Example
Set the dock to one d20 for skill checks, or a second Browser Source with 2d6 for damage, and roll from a Stream Deck button so your hands stay on your notes.
A timer on screen for anything that needs one: a challenge, a break, a chat vote. Set a fixed time, or a range and let it pick, or turn on surprise stop so nobody knows when it ends.
Example
For a hot potato round, set 30 seconds to 2 minutes with surprise stop. The timer counts down from 2:00 and stops without warning, and the card says when.
Ready-to-use setups for common situations
Paste the entrants into the dock, put the race full size in its own scene, and switch to it when you are ready. Chat watches the marbles, the photo finish settles close ones, and the winner card stays up while you read out the name.
π Best with Marble RaceDraw the first winner, press Remove winner in the dock, and draw again. Removed names are listed in the dock, with a button to put them back if you made a mistake.
π‘ Best with Spinning WheelPut challenges on the wheel instead of names (no healing, pistol only, inverted controls) and spin when chat hits a goal. Keep the wheel small in a corner so the game stays visible.
π‘ Best with Spinning WheelKeep the queue in the dock and open the box whenever a slot frees up. Remove each pick so nobody gets two turns before everyone has had one.
π Best with Mystery BoxLeave the claw machine in a corner of the scene all stream. Each time a goal is hit, grab a winner from the dock without switching scenes.
πͺ Best with Claw MachineKeep the dice small in a corner of your game scene and roll from the dock as the party acts. The card holds the total long enough for everyone to read it before the next roll.
π² Best with Dice RollerStart the countdown when chat sets a challenge and stop it from the dock if you finish early. With a range, even you do not know exactly how long you get.
β±οΈ Best with Countdown TimerGet the most out of these tools
The dock shows how many names are in play. Saying it out loud ("38 of you are in, here we go") tells viewers their entry counted, which matters more on stream than anywhere else.
Sound is off unless you switch it on in the dock. OBS only plays a Browser Source's sound when Control audio via OBS is ticked in the source's properties, which also gives it a slider in the audio mixer.
Coming back to the scene clears any winner card that was still up, so last week's winner never appears when you switch to it.
Choose the tool at the top of the dock. Only that tool's overlays respond, and one whose scene is not on air sits it out, so a wheel in one scene and dice in another never draw at the same time. OBS tells an overlay its scene is off air when you switch scenes, so after you start OBS, switch scenes once before your first draw. The dock warns you if two overlays of the same tool both think they are on air.
A small funrandompickers.com label sits under the picker. You can turn it off in the dock, but leaving it on is how other streamers find the overlay.
Window capture records a whole browser window: the tab bar, the page header, the sidebar, and anything that pops up. You end up cropping it by hand, and a notification or a bookmarks bar can still slip into the shot.
A Browser Source runs the page inside OBS itself, and anything the page does not draw shows the scene underneath. The overlay draws only the picker, the winner card and the small credit, so it can sit over a camera without a box around it.
Because the source lives inside OBS, it does not depend on which browser windows you have open, and it is still there after a restart. The dock lives in OBS too, which is how the two can talk to each other without anything going through a server.
Everything you need to know
The overlay is see-through only as a Browser Source. Check that you added a Browser Source rather than a Window Capture of a browser tab, and that the source's Custom CSS box does not set a background color.
Through obs-websocket, which comes with OBS 28 and later. Send a CallVendorRequest with the vendor name obs-browser, the request type emit_event, and the event name frp-spin. The events frp-remove, frp-clear, frp-replay, frp-newtrack, frp-pause and frp-stop remove the winner, clear the card, replay a marble race finish or lay a new track, and pause or stop a countdown. If you have more than one tool in OBS, add it to the event data, for example {"mode": "dice"}, so only that one draws.
It is built for OBS Studio and tested there. Streamlabs Desktop is built on OBS, so the overlay may work, but we have not tested it yet. Other apps need a browser source with a see-through background and a way to interact with it, since that is how a draw starts without the OBS dock. If the link opens the regular picker page instead of the overlay, add view=stream to it, for example funrandompickers.com/embed/wheel?view=stream.
Not yet. For now, paste the names into the dock, for example from a chatbot's list of entries.
No. The dock has to run inside OBS on the same computer as the overlay, because the two talk to each other there and nowhere else.
No. The overlay and the dock never load ads. The regular pages of the site carry ads, which is what keeps the tools free.
Names you type into the dock are saved in OBS's own browser storage, on your computer. Names in a stream link sit after the # sign, a part of the address that browsers never send to a server.
The wheel takes any list, not just entrants. Open one of these, load it onto the wheel, and click Use in OBS to put it on stream.
Turn a giveaway into a race chat can cheer for, right on your stream, with live standings and a photo finish.
β±οΈA big, readable timer on your stream for challenges, breaks and chat votes, with a random or surprise stop when you want a twist.
πRoll any polyhedral die, d4 through d20, with 3D animations and cryptographic randomness. Built for game night, whether you are at the table or on a video call.
Free, instant, and works on any device. No sign-up needed.