When Monito’s errors are free
A run Monito could not finish is not charged. A failed check that found an app bug is charged. The difference is the cause.
A standard test costs 1 credit. Discovery costs 20. An Advanced test costs 10. That price list is /pricing and the credits command. Two cases settle at 0 credits.
The first onboarding run
Each user gets one onboarding run that is not charged. The wizard says "Your first run is free." Other launches are charged, including a later check that finds a bug in your app.
An error Monito caused
If the run's status is error and any of these is true, the credits charged are 0:
- evidence was lost
- the run's provenance does not match
- the executor reported a platform failure (time limit, model provider, harness)
- a local tunnel never connected
The report's cause line for that is Monito's error — not charged, or Check didn’t start — not charged when the check never started. Outside that first onboarding run, an error that is about your site stays charged.
A Failed run is a product verdict: the app did not do what you wrote. That is charged, except for the one free onboarding run above. Finding a bug is not an error on Monito's side.
Local tunnels, specifically
From the check command:
- Nothing is listening before launch: no run is created, and nothing is spent.
- The tunnel never connects: not charged. The server waits up to 60 seconds.
- The tunnel closes after the agent has started: charged. The cause is "Site unreachable or access blocked," and the error says the tunnel closed.
- Monito's tunnel agent fails: not charged.
At most five local checks per user per hour, including ones that are pending or running. A further launch returns HTTP 429 local_tunnel_limit.
Closing the tunnel yourself (Ctrl-C, a killed CLI, a wait that times out) is the charged case. Exit 6 means the CLI stopped waiting. For a local check, that closes the tunnel. monito run wait can read the ending. It cannot reopen the tunnel.