A machine stopped syncing
Sync only runs when you ask for it, or on the interval your plan allows, so a profile going quiet is normal more often than it is broken. Work down this list.
1. Ask the server what it thinks
tokenstat sync --status
That prints your account status as the server sees it, without uploading anything. If it answers, the token is valid and the machine is linked, which rules out most of this page in one command. It also prints when each machine may sync next, which answers the most common case on its own.
2. It is simply not due yet
Each machine may sync once per interval: hourly on Free, every 30 minutes on Supporter, every 10 minutes on Patron. A run inside that window is skipped rather than queued, and a manual tokenstat sync says so plainly:
This machine may sync once every 60 minutes on the free plan.
Nothing is lost by waiting. Every sync uploads a complete window, so the next one carries whatever the skipped one would have. Intervals per plan are on the pricing page.
3. The schedule is not running
Sync uploads what has been scanned, so there are two entries and either can be the problem. tokenstat schedule prints both without changing anything.
tokenstat schedule # print the entries, change nothing
tokenstat schedule --install # write and activate them
The sync entry is only installed while a machine is linked, so if you signed in after setting up the schedule, run --install again.
On Linux, a user timer stops when you log out unless lingering is enabled:
loginctl enable-linger $USER
On macOS the LaunchAgents run while you are logged in. On Windows check the scheduled tasks named ai.tokenstat.scan and ai.tokenstat.sync.
4. The token was revoked
Unlinking a machine, or deleting and recreating an account, invalidates the token that machine was using. It will not repair itself. Link it again:
tokenstat login
That runs the device flow: the CLI prints a short code, and you enter it at /link in a browser where you are already signed in. No password is typed into a terminal at any point.
5. You are at the machine limit
Each tier allows a fixed number of linked machines. A new machine beyond that limit is refused rather than silently replacing an existing one, because silently dropping a machine's history would be worse.
Check what is linked in your settings, unlink anything that is retired, and link the new one. Machine limits by tier are on the pricing page.
6. Only part of the history is missing
Sync sends a window of days. If a stretch is missing rather than everything, re-send it explicitly:
tokenstat sync --window 2026-06-01..2026-06-30
A window replaces the days it covers rather than adding to them, so re-sending a range is safe and repeatable. It cannot create duplicates.
7. The profile updated but the page looks stale
A public profile is cached for a short time. Give it a minute. If your own dashboard shows the new numbers and the public page does not, that is the cache and it will catch up on its own.
What sync will never do
It will not start on its own. Uploading needs an account you created, a machine you linked, and a schedule you installed, and removing any one of those stops it. There is no daemon nobody asked for and no telemetry to disable, because there is none. If a machine has stopped syncing and you never set it up to sync in the first place, that is working as intended.
Before sending anything, you can always read exactly what would go:
tokenstat sync --dry-run
Related
- What leaves your machine when you sync is the full payload, field by field.
- Install tokenstat covers the scan schedule that feeds sync.
More in Troubleshooting
