URL parameters
Every part of a Metric Vault address that changes what you see: deep links into tools, sign-in parameters, share and invite paths, and the permanent redirects.
Last updated 2026-08-06
Summary#
Metric Vault addresses carry meaning in three places: the path, the query string after ?, and the fragment after #. This page lists every one the platform reads, on the app, the sign-in page and the public site, plus the permanent redirects that keep old links working. Use it to bookmark a tool, to build a link for a teammate, or to work out why a link landed somewhere unexpected.
Overview#
Three rules cover almost every case.
- The dashboard remembers which tool you are on in the fragment. Open a tool and the address becomes
https://metricvaultai.com/dashboard#/<tool>. That address is a working bookmark: it opens straight into that tool. - The query string is only used at sign-in. It carries a chosen plan into checkout, or an error handed back by a sign-in provider. Nothing in the app itself is driven by
?parameters. - Anything the platform does not recognize is ignored, harmlessly. Campaign tags, referral tags and anything else you append are neither read nor stored.
Note: Parameters are not a permission boundary. A link into a tool is still subject to your plan, your credits and your session; opening someone else's deep link does not grant access to their data.
Dashboard: deep links into a tool#
| Form | What it does |
|---|---|
/dashboard | Opens the Dashboard home view |
/dashboard#/<tool> | Opens that tool directly |
/dashboard#/imagetool | Kept working from an older link. Opens Image Resize |
/dashboard#/<unknown> | Falls back to the Dashboard home view. Nothing errors |
The Dashboard home view deliberately has no fragment, so the address stays /dashboard rather than repeating the word.
Finding the identifier for a tool#
Two reliable ways, both inside the app:
- Open the tool and read the address bar. Everything after
#/is the identifier. - Press
Ctrl + Kto open the command palette and start typing the tool name. Each result row shows its identifier in small monospaced text on the right. See The command palette (Ctrl+K).
A few examples of the pattern, from the tool list:
| Tool | Deep link |
|---|---|
| Domain Overview | /dashboard#/doverview |
| Keyword Overview | /dashboard#/koverview |
| Keyword Explorer | /dashboard#/keymagic |
| Site Audit | /dashboard#/siteaudit |
| Competitor Monitor | /dashboard#/cmonitor |
| My Reports | /dashboard#/myreports |
| Account | /dashboard#/account |
| Team | /dashboard#/team |
The full catalogue of tools is in Tool catalog and credit cost.
Important: Alert emails and webhook payloads link to #reports and #competitor-monitor. Those are not tool identifiers, so they open the Dashboard home view rather than the named screen. From there, use Track & Report → My Reports or Competitors & Backlinks → Competitor Monitor.
Browser navigation#
The fragment is written into browser history as you move between tools, so Back and Forward work as you would expect, and a reload keeps you on the tool you were using rather than dropping you home.
Sign-in page parameters#
These are read on /login (equivalently /login.html).
| Parameter | Where | Values | Effect |
|---|---|---|---|
plan | query | starter, pro, agency, enterprise | After you sign in or sign up, checkout opens for that plan instead of the dashboard |
plan | query | free | No checkout. You land on the dashboard as normal |
billing | query | monthly, annual | Chooses the billing period for the plan above. Anything else is treated as monthly |
mode | query | reset | Shows the Set New Password form instead of the sign-in form |
type | fragment | recovery | Same as mode=reset. This is what a password-reset email link carries |
type | fragment | invite | Keeps you on the page to finish setting up, rather than redirecting |
error, error_code | query or fragment | Provider-supplied | A sign-in failure is shown instead of a blank form |
error_description | query or fragment | Provider-supplied | The text shown with the error above |
access_token, refresh_token | fragment | Provider-supplied | Part of a Google sign-in return. Consumed automatically |
code | query | Provider-supplied | The other form of a Google sign-in return. Consumed automatically |
#signup | fragment | — | Opens the Sign Up tab rather than Sign In |
Notes on behavior:
- A plan chosen before sign-in survives a Google round trip even though the return address cannot carry it, because the choice is held in the browser tab for the duration.
- After a provider error is shown, the error parameters are stripped from the address so a refresh does not repeat the message. A pending
planandbillingare preserved. - If you are already signed in and land on
/loginwith?plan=, you are taken straight to checkout withOpening secure checkout…on screen. Without it, you seeTaking you to your dashboard…. access_deniedis not treated as a failure. It means you closed Google's consent screen, and the page saysGoogle sign-in was cancelled. You can try again or use your email and password.
Dashboard sign-in parameters#
The dashboard reads the same set of provider parameters, because a completed sign-in can return directly to it.
| Parameter | Where | Effect |
|---|---|---|
code | query | A sign-in return still being exchanged. The gate waits longer instead of asking you to sign in again |
access_token, refresh_token | fragment | As above |
error, error_code, error_description | query or fragment | Shown as Sign-in did not complete: <description> instead of a bare sign-in prompt |
If you are not signed in and none of these are present, you are sent to the sign-in page rather than parked on a dead end.
Paths that carry a value#
| Path | The value | What it opens |
|---|---|---|
/share/<slug> | The slug generated when you create a public link | A read-only copy of one report, with no sign-in. See Sharing a result by link |
/blog/<slug> | The post slug | One published blog post |
/team/accept/<token> | The single-use token in an invitation email | The workspace invitation acceptance page. See Inviting teammates |
Share slugs are generated, never guessable from the report title, and a link can be given an expiry when you create it. Deleting the link makes the address stop working immediately.
Public site anchors#
| Address | Section |
|---|---|
/#chapters | The platform walkthrough on the homepage |
/#story | The customer story section |
/#demo | The product demo |
/#pricing | The plan cards on the homepage |
/legal/privacy#cookies | The cookies section of the privacy policy |
The navigation bar's Platform and Customers links point at the first two. On the homepage itself they scroll; from any other page they navigate home first, then scroll.
Permanent redirects#
These return a permanent redirect, so old bookmarks and indexed links keep working.
| Old address | Goes to |
|---|---|
/compare, /compare.html | /pricing |
/privacy, /privacy.html | /legal/privacy |
/terms, /terms.html | /legal/terms |
/legal.html | /legal |
/legal/cookies.html | /legal/cookies |
Each free-tools path also resolves with or without a trailing .html.
The old /free/* slugs are not redirected. _routes.json excludes /free/* from the Worker, so those paths never reach it and return 404. /free-tools/ is the only URL for the free tools hub.
Parameters the platform does not use#
Being explicit here saves a debugging session.
| Parameter | Status |
|---|---|
utm_source, utm_medium, utm_campaign and the rest | Not read, not stored. Metric Vault runs no third-party analytics tag on its pages, so campaign tags have no effect at all |
ref, referrer, affiliate tags | Not read. There is no referral programme |
lang | Not supported. Language is chosen from the switcher and stored in your browser. See Supported languages |
theme | Not supported. Light and dark are chosen with the toggle in the top bar. See Light and dark mode |
country, range, device | Not supported. The country picker and date range are set in the top bar and are not carried in the address |
| Anything else | Ignored. Extra parameters never break a page |
Two things you may see that are not parameters#
| What | Meaning |
|---|---|
?v= on a stylesheet or script address | A cache-busting marker so browsers pick up a new version. It has no user-facing effect |
A long random path under /api/ | The application talking to its own backend. These are not addresses to open in a browser; see All endpoints |
Troubleshooting#
| Symptom | Likely cause | Fix |
|---|---|---|
A #/ link opened the Dashboard instead of the tool | The identifier is misspelled, or the tool was renamed | Open the tool from the sidebar and copy the address again |
| A bookmarked tool asks you to sign in | The session in that browser has expired | Sign in; you are returned to the app |
| A share link says the report is unavailable | The link was deleted or has expired | Ask the sender to create a new one. See Sharing a result by link |
| An invitation link says it is invalid | The token is single use, or the invitation was revoked | Ask the workspace owner to re-invite you. See Inviting teammates |
?plan= did nothing | The value is not one of the four paid plans, or you were already on that plan | Use starter, pro, agency or enterprise, or upgrade from Account → Subscription |
See also
Was this article helpful?
Thanks — feedback noted for the docs team.