Open Desktop Authenticator

Steam Guard code not working? Check the clock

When Steam refuses code after code, the first thing to check is not the code. It is the clock on the device generating it — the cause Valve itself lists first. This page explains why, fixes it in about a minute, then covers the other causes in the order worth working through.

Why the time breaks the code

A Steam Guard code is not random. It is computed from two ingredients: a secret your authenticator holds, and the current time, rounded to a thirty-second window. Steam runs the same computation on its side and checks that the answers match. If your device's clock is out, you are computing codes for a different window than the one Steam is checking — so every code you type is valid, just not now.

Valve's own troubleshooting says exactly this: "check the time on your phone and make sure it is accurate. The authenticator codes are generated using the phone's time, and if the time is off, the codes will be incorrect." The same arithmetic applies to any device generating codes, including a PC.

Fix it on Windows

  1. Open Settings → Time & language → Date & time.
  2. Turn on Set time automatically and Set time zone automatically.
  3. Press Sync now. If it fails, check the connection and try again.

The sneaky version is a wrong time zone with a right-looking local time: the clock on the wall reads correctly while the underlying UTC time — the one codes are computed from — is hours off.

Fix it on a phone

Android: Settings → System → Date & time → automatic date, time and zone on. iPhone: Settings → General → Date & Time → Set Automatically. Then close and reopen the Steam app so it notices the change.

Still refused? The rest, in order

The wrong account
Valve's second listed cause, and it catches everyone running more than one account: "make sure you are entering codes for the correct account." Check the account name shown above the code.
The code expired mid-typing
Codes roll every thirty seconds. If one rolled while you typed it, the code you entered had just died. Wait for a fresh one and enter it promptly.
Too many attempts
After a run of failures Steam will stop accepting attempts for a while. Valve does not publish how long, so the only sound advice is to stop retrying and come back later rather than to guess at a number.
The authenticator was moved or re-added since
Adding an authenticator on a new device replaces the old secret, and an account can only be on one authenticator at a time. Any copy of the previous secret — an old maFile, an old phone — keeps generating codes confidently, and every one of them is dead. The secret in the file is the authenticator: if Steam has been handed a new one since that copy was made, the copy is a relic.

How this application sidesteps the whole problem

A desktop authenticator cannot assume the PC's clock is right — desktop clocks drift more than phones, which sync aggressively. So Open Desktop Authenticator asks Steam's own servers what time it is and computes codes against Steam's clock, not the machine's. A drifted PC clock then stops mattering, because the code is computed in the window Steam is actually checking. That is not cleverness — it is doing the arithmetic with the right inputs, and it is worth asking of any authenticator you use.

Related

Last reviewed .