The dashboard is stuck loading
What the spinner on the dashboard is waiting for, how long each wait lasts, and what it means when the wait ends the wrong way.
Last updated 2026-08-06
Summary#
When you open the dashboard, a full-screen overlay with a spinner covers the app while it checks who you are. That check has three possible endings: the app opens, you are sent to the sign-in page, or a message explains why neither could happen. This article explains what the spinner is waiting for, exactly how long it waits, and what each ending means.
Symptoms#
- The dashboard shows a spinner on a dark or light background and never opens.
- The dashboard flashes, then sends you to the sign-in page even though you were signed in a moment ago.
- A padlock panel appears reading
Sign in to continuewith the subtitleYour Metric Vault dashboard is protected. Please sign in to access your tools. - Under that panel there is a red note reading
Could not load the sign-in library. An ad blocker, privacy extension or network filter is the usual cause. Allow this site and reload. - Under that panel there is a red note reading
Sign-in did not complete: <reason>. - The sign-in page is covered by
Taking you to your dashboard…orOpening secure checkout…and does not move on.
Diagnosis#
What the spinner is actually doing#
The dashboard is a public page that protects itself in your browser. On load it does three things in order: it loads the sign-in library, it asks whether you have a valid session, and then it either opens the app or moves you on. The overlay stays up for all of that so you never see a half-loaded app.
If a session is found, the overlay fades out over a quarter of a second and the app is yours. Everything else below is what happens when a session is not found straight away.
The three waiting periods, and what each one means#
| You are seeing | The app waits | Then it does | What that tells you |
|---|---|---|---|
| A spinner on a normal dashboard load with no session found | 1.5 seconds | Sends you to the sign-in page | The short wait exists because a stored session sometimes takes a moment to restore. If it arrives inside that window, the app opens instead and the redirect is cancelled |
| A spinner right after signing in with Google, when the web address still carries the handshake | 8 seconds | Sends you to the sign-in page | Finishing a Google sign-in takes longer, because the code in the address still has to be exchanged for a session. Showing a sign-in prompt after 1.5 seconds here would look like a failed login when it was still working |
The sign-in page covered by Taking you to your dashboard… | 5 seconds | Uncovers the form and clears the stored session data | Your browser had a stored session key that turned out to be expired or orphaned. Rather than trap you behind a cover that will never lift, the page hands the form back and clears the dead key so it cannot happen again |
The practical rule: on the dashboard, nothing should hold you for more than about 8 seconds. If it does, the app is not waiting for your session, it is stuck earlier than that.
The three endings that are not a redirect#
Sign in to continue with the padlock. This panel only appears when the app could not complete the check at all, or when the sign-in provider reported an error. It is not the normal signed-out experience; the normal signed-out experience is being sent to the sign-in page.
Could not load the sign-in library. An ad blocker, privacy extension or network filter is the usual cause. Allow this site and reload. The library that verifies your session never loaded. The app is not saying you are signed out, it is saying it could not find out. Pressing Sign In will not help until the block is removed, because the sign-in page needs the same library. See I cannot sign in.
Sign-in did not complete: <reason>. You arrived back from a sign-in provider that reported a failure, and the reason text is theirs. Common values name a cancelled consent screen or a return address that is not permitted.
It is stuck before the session check#
If the overlay never gets past the spinner and no message appears at all, the page itself did not finish loading. Likely causes, in the order worth checking:
- A blocked or failed script. Same cause as the message above, but caught before the message could be written. A private window with extensions disabled is the fastest test.
- A slow or interrupted connection. The dashboard is one large application page. On a weak connection the first load takes noticeably longer than any later load, because after the first load your browser caches most of it.
- An old copy cached by your browser or a proxy. The sign-in page and the dashboard are both served with caching switched off, so a plain reload always fetches the current version. A corporate proxy that ignores that instruction can still serve you something stale.
- A service worker left by an older visit. On every load the dashboard removes any registered service worker and clears its caches for exactly this reason, so this should self-heal after one full reload.
It loads, then immediately bounces to sign-in#
This is the 1.5 second path completing normally: no valid session was found. The usual reasons are that your session expired, you signed out in another tab, or you used Log Out All from Account → Security, which ends your session on every device. See Sessions and signing out.
Resolution#
Work down this list. Stop as soon as the app opens.
- Reload the page. Not the browser Back button. A plain reload is enough for a stale asset or a leftover service worker.
- Wait the full 8 seconds if you just used Google sign-in. Do not reload during the handshake, because reloading discards the code the app is trying to exchange.
- Open a private or incognito window and sign in there. If it works, an extension in your normal window is the cause. Re-enable extensions one at a time to find it.
- Allow this site in your ad blocker, privacy extension or DNS filter, then reload. This is the fix for both "could not load the sign-in library" messages.
- Try a different network. Corporate networks and VPNs that filter JavaScript are a frequent cause on managed laptops.
- Clear the site's stored data for this domain if the sign-in page keeps covering itself. The page already clears a dead session key after 5 seconds, but clearing site data by hand removes anything older.
- Sign in again from a clean start: go directly to
/login, useContinue with Googleor your email and password, and let it move you to the dashboard itself rather than typing the dashboard address. - If the padlock panel keeps returning with a message, send that message verbatim to support along with your browser and whether you use Google sign-in. See Contacting support.
Warning: A tool that spins forever inside the app is a different problem. The dashboard overlay only covers signing in. A tool showing Analyzing… this can take a few seconds for live data. and never finishing is covered by A tool failed to run.
Prevention#
- Allow this site in any content blocker before you need it. Every symptom in this article that is not a normal signed-out redirect traces back to a blocked script.
- Do not bookmark a dashboard address that includes sign-in parameters. Bookmark
/dashboardor the site root, and let sign-in route you. - Let Google sign-in finish. The 8 second wait exists to cover the exchange; interrupting it starts the whole handshake again.
- Sign out deliberately when you finish on a shared machine, rather than leaving a session to expire.
Log Out AllunderAccount → Securityends every session at once. See Sessions and signing out. - Keep one tab per account. Two accounts signed in to the same browser share the same stored session, and the second one wins.
See also
Was this article helpful?
Thanks — feedback noted for the docs team.