If you want a speedrun timer on an OBS scene, the direct route is the LiveSplit One OBS plugin: install the release for your system, add its source, then choose your split file and layout. If that plugin does not suit your OBS build or platform, OpenSpeedRun offers a different route through a local overlay server and an OBS browser source.
The timer is separate from the game capture and from YouTube’s live connection. You set it up as a scene element, check that its text is legible over the game, and decide whether you want to control it with OBS hotkeys. The steps below focus on those choices rather than assuming one integration works on every computer.
Choose the timer integration
Start with the LiveSplit One plugin if its release supports your operating system, architecture and OBS version. It appears in OBS as a dedicated source, and its properties let you select a run’s split file and a layout. That keeps the main setup decisions inside OBS rather than requiring you to build a browser overlay first. The LiveSplit One project README describes the installation notes and source options.
OpenSpeedRun is an alternative when you prefer its timer or need a browser-source route. Its documented approach is to enable the “OBS overlay server” in OpenSpeedRun’s configuration and connect an OBS browser source to a local WebSocket endpoint. The overlay server is off by default, so this is not a step in the LiveSplit One setup. Read the OpenSpeedRun project documentation for its own release and overlay instructions.
| Consideration | LiveSplit One source | OpenSpeedRun overlay |
|---|---|---|
| How it enters OBS | Add a dedicated “LiveSplit One” source | Add a browser source that consumes a local WebSocket overlay |
| Main setup choice | Select the split file and layout in source properties | Enable the overlay server, then connect the browser source to the local endpoint |
| Compatibility check | Match the plugin release to your OS, architecture and OBS version | Check OpenSpeedRun’s release notes and platform information; its repository says macOS is currently untested |
| Presentation | Choose a layout in the source properties; separate sources can use different layouts with the same split state | Use a browser-source presentation; the repository provides an overlay example |
These paths are not interchangeable in every detail. The plugin provides a dedicated source with split-file and layout selection, whereas the OpenSpeedRun route depends on its server being enabled and a browser source reaching the local endpoint. Neither route should be treated as guaranteed to work on every OS or OBS build.
Before installing a plugin, check the OBS Project’s plugin guidance. OBS notes that plugins can add sources, filters and features, but compatibility can vary by platform and OBS version. In practical terms, verify the release notes and installation instructions for the software versions you actually have, rather than relying on a tutorial made for a different setup.
Install the LiveSplit One plugin
Download the release and follow the installation instructions for your operating system. The project provides OS-specific notes, including Windows, Linux, Flatpak and macOS. Use the instructions that match your OBS installation as well as your operating system; a Flatpak build, for example, is not the same installation context as a conventional package.
Do not assume that a file labelled for your operating system is necessarily the right one. Check the release details for architecture and OBS-version support. If you are unsure whether OBS has recognised the plugin, restart OBS after installation and look for “LiveSplit One” in the Sources dock’s add-source menu. If it is not there, return to the project’s installation notes and compare them against your OBS build before changing unrelated scene settings.
Keep the release page and README handy while installing. The plugin project’s notes are the source of truth for where its files go and any system-specific steps; this article does not replace those instructions. OBS’s own plugin guide is useful context for the broader idea that plugins extend OBS, but the installation details belong to the plugin maintainers.
If you run a gaming stream from a Linux host, remember that the timer is only one part of the scene and broadcast chain. A timer can appear correctly in the OBS preview while the outgoing stream has another problem. Keep the checks for a YouTube broadcast that appears offline in mind when you test the full output, rather than treating a visible timer as proof that the broadcast is healthy.
Add LiveSplit One as an OBS source
Open the scene where you want the timer. In the Sources dock, choose the option to add a source and select “LiveSplit One”. Give it a recognisable name if you have several scenes or timer sources, then open its properties. The exact appearance of the dialog can vary with the plugin release, so use the project README if a control is not where you expect it.
At this point the source is the link between OBS and the timer display. It is not a capture of a separate window that you must keep positioned behind the game, and the documented setup exposes its run and presentation choices through source properties. This makes it easier to keep the timer as part of the scene composition: you can move and resize the source like other OBS elements, while leaving the gameplay capture in its own source.
Add the timer to the scene in which it will actually be used, rather than only to a temporary test scene. If you use more than one scene, decide deliberately whether the timer should appear in all of them. OBS scenes can have different sources and layouts, so a timer that is visible in one scene will not necessarily be visible in another. Check each relevant scene instead of assuming the first setup carries through automatically.
A useful test is to select the game or recording scene, bring the timer into view, and confirm that it sits above the gameplay source in the source stack. If it is behind an opaque gameplay capture, it may exist but remain hidden. If it is above the game but covers a health bar or important text, adjust its position before you start a run.
Select a split file and layout
Open the LiveSplit One source properties and select the split file for the run you intend to show. A split file contains the run’s segment structure and comparison information; it is not the same thing as the timer’s visual layout. Confirm the game or category and the intended route before going live. A timer can display perfectly well while showing the wrong run’s segments, which is why a quick content check matters as much as a visual one.
Then choose a layout. The layout determines how the timer and splits are presented, so use one that fits the width and height available in your scene. A long list of segments may be useful during a personal run but can become cramped in a narrow stream overlay. Conversely, showing only a small part of the timer may make it difficult for viewers to see the current split or comparison. Preview the actual scene at the scale viewers will see, not only in a large properties window.
The plugin documentation describes selecting the split file and layout in the source properties. It also allows multiple sources to share split state while using different layouts. That can help if you have a full layout for a practice scene and a compact one for a stream scene, though you still need to verify that the chosen source and layout are the ones on screen. Avoid creating extra sources unless you have a reason for distinct presentations; each adds another item to identify and maintain.
When the timer looks crowded, first reconsider the layout and placement rather than shrinking everything until it is unreadable. A compact display near an unused corner of the game can be clearer than a detailed split list laid across the action. For a study stream or a local event broadcast, the priority may be different: viewers may need to read the current segment, while the runner may care more about seeing the timer controls. Make the layout serve the people watching and the person running.
Assign source hotkeys if useful
If you want to control timer actions from the keyboard, open OBS Settings and use the Hotkeys section to assign the available LiveSplit One source actions. The plugin’s instructions cover source hotkeys; use the action names shown in your installed version rather than assuming every control from another timer is present.
Hotkeys are useful when the game occupies the screen and you do not want to switch focus to another window just to control the timer. They are not essential to displaying a timer, however. If you already use keyboard shortcuts for gameplay, choose combinations that do not collide with those controls. A shortcut conflict can create confusion at exactly the moment you want to start or reset a run.
Test each assigned action in a safe scene or before the timed attempt. Confirm what the key does, whether OBS receives it while the game is active, and whether it affects the intended source. If you share the computer with another operator, write down the chosen bindings so the person handling OBS does not have to guess. Keep the control scheme simple enough to remember under pressure.
You can leave hotkeys unassigned if the runner prefers to control the timer through its normal workflow, or if another person is managing the broadcast. The practical decision is whether keyboard control improves the run without increasing the chance of an accidental reset. A timer that is visible and correctly configured is more important than adding shortcuts that no one has tested.
Alternative: use OpenSpeedRun’s overlay server
If the LiveSplit One plugin is unavailable for your setup, or you specifically want to use OpenSpeedRun, its documented alternative is a local overlay server. Enable “OBS overlay server” in OpenSpeedRun’s configuration; it is disabled by default. Then add an OBS browser source that connects to the local WebSocket endpoint described by OpenSpeedRun. Follow the repository’s instructions for the endpoint and overlay example, as those details are specific to its software.
This is a different integration, not a required preparation step for LiveSplit One. You do not need to run OpenSpeedRun’s server before adding the LiveSplit One source. The browser route is appropriate when you want an overlay delivered to OBS through a browser source, but it asks you to enable a server and connect that source correctly. A browser source that cannot reach the endpoint will not show the timer simply because the server software is installed.
OpenSpeedRun’s repository describes releases for Windows, Linux and macOS, while noting that macOS is currently untested. Treat that as a compatibility caveat, not a promise that a particular release will behave the same on every system. Check its current project page before choosing it, particularly if you are using macOS or a less common OBS packaging method.
Do not copy settings from a different timer’s browser overlay guide unless OpenSpeedRun’s documentation confirms they apply. The supported facts here are the opt-in local WebSocket overlay and its use with an OBS browser source. Use the project’s own instructions for the endpoint and the provided overlay example, then check the browser source inside your scene.
Check the timer in your scene and stream
Once the timer is configured, check the full composition in the OBS preview. Make sure the timer is above the gameplay layer, is not cut off by the scene canvas, and remains readable against both bright and dark parts of the game. If the game moves beneath it, watch a representative section rather than judging only from a still frame. A thin outline or a clear background can help contrast, if supported by the layout you selected.
Check the scene at the resolution and scale you intend to send. A timer that looks clear on your monitor may be too small after the scene is viewed in a player window or on a phone. Viewers of a speedrun often need to tell whether the timer is running and read the current split; if your layout carries more detail than the available space supports, simplify it or give it more room.
Test a full start-to-finish sequence before using the setup in a live attempt: load the intended split file, show the desired layout, trigger the controls you plan to use, and check the final scene. If you record locally as well as streaming, inspect the recording too. This can catch a source that looked fine in the preview but was hidden, covered or placed differently in the scene you actually used.
If the timer is correct in OBS but the broadcast is not reaching viewers, troubleshoot the broadcast separately. Timer visibility does not establish that YouTube is receiving the stream. For a channel that also runs longer scheduled content, the guide to streaming recorded lessons continuously offers a different kind of workflow context; for a speedrun, the immediate goal is simply to validate the scene and the live output before relying on it.
When your format later changes from a live run to a continuous recorded programme, a speedrun timer may no longer be the right overlay. StreamNeo is relevant to that separate operational problem: it can keep a prepared video broadcasting to YouTube without leaving your computer running, removing the need to keep a local machine switched on for a file-based 24/7 channel. It is YouTube-only, and it does not configure a speedrun timer in OBS.
Before committing, compare the operating options on the pricing page. When the file and channel are ready, start free — 24-hour trial, no card.
FAQ
Does LiveSplit One appear as a browser source in OBS?
No. The documented LiveSplit One route adds a dedicated “LiveSplit One” source from OBS’s Sources dock. OpenSpeedRun’s alternative uses an OBS browser source connected to its local WebSocket overlay server.
Do I need OpenSpeedRun to use the LiveSplit One plugin?
No. They are separate approaches. Use the LiveSplit One plugin and its source properties for its split-file and layout workflow; use OpenSpeedRun only if you choose its timer and enable its overlay server as its documentation describes.
What should I check if LiveSplit One is missing from the source menu?
Check that you installed a release intended for your operating system and architecture and that it supports your OBS version. Follow the plugin project’s OS-specific notes, then restart OBS and check the source menu again. OBS’s plugin documentation warns that compatibility varies.
Can I use the timer on every operating system?
Do not assume so. Plugin and overlay compatibility depend on their releases and your OBS setup; OpenSpeedRun’s repository notes that its macOS support is currently untested. Check the current project documentation for your system before depending on either route.