Landmark DocsDashboard →

On stream

Goals, counters & timers

Goals, counters and timers all run on one system. Landmark keeps each value on its server, counts it the same way everywhere, and shows the same number on your overlay, the dock, the chatbot and Landmark Desktop. The Goals, counters & timers page lists every one with its live value and controls.

The three templates

Start one from the three cards at the top of the page: Goal bar, Counter or Timer. Each asks a few questions, then shows on your overlay. Press On stream to take one off your overlay and keep it private. It still counts and answers its commands.

Goal
A bar that fills toward a target, like raising $100 for a new mic. A money goal counts every tip, Super Chat, Rant, bit, Kick and gift on every platform. It can count follows or subs instead. Add steps so it moves on to the next milestone when one is hit, and a short name for !goal.
Counter
A running number that climbs on an event or a chat command (a death counter, a win tally). Set a start value, a step, and the command.
Timer
A subathon clock where each sub and each $1 adds time, with an optional longest length or a date it can't pass. It can also be a plain countdown or a stopwatch.

How counting works

  • Landmark counts every goal, counter and timer for you, even when OBS is closed. Nothing counts twice, however many overlays you have open.
  • Money is the real amount from each platform, to the cent. A $0.99 tip adds $0.99.
  • Twitch subs count by tier. See How Twitch subs are counted.
  • Test alerts and test fires never count.
  • A refund takes back what that payment added, from every goal, counter and timer it moved. A partial refund takes back its share.
  • Gifted subs count once each. A resub counts as one sub, however many months.
  • A custom rule (for example “a tip of $5 or more adds 1”) replaces the automatic counting for that one.
  • A new timer waits, paused, until you press Start. It keeps time on our clock, so a wrong PC clock can't change it.
  • You and your mods can drive a counter from chat with its command (for example !deaths, !deaths 3, !deaths reset) and a timer with !timer pause, !timer resume or !timer add 5. Anyone can read one with !goal or !count deaths.

Controlling a value live

From this page or the control dock you can add to, subtract from, set or reset any goal or counter, and pause or resume a timer. Changes are saved on the server first, so a correction sticks even when no overlay is open.

Configuring each one

Edit a widget's per-instance settings right here: a goal's target and its tier milestones, a timer's max time or end date, a counter's chat command and step. Config changes take effect when the live element next reloads; value changes are instant.

One goal on several overlays

The same goal can show on more than one overlay, for example your landscape scene and a 9:16 vertical one. Each keeps its own position and colors, and both show the one value.

For developers

Apps can read and change goals, counters and timers with an integration token.

GET /api/integrations/v1/meters
Every goal, counter and timer with its live value. Scope meters:read.
POST /api/integrations/v1/meters
Scope meters:write. Body { "id" | "name", "verb", "num" } with a verb of add, sub, set, reset, pause or resume. Timers take num in minutes. An Idempotency-Key header is required: a retry with the same key changes nothing and returns duplicate: true.

Open Goals, Counters & Timers →

Last updated · September 29, 2026

Goals, counters & timers · Landmark