sekskant Blog

Bookmarks for Google services: how to do it when you have several accounts

What this is about#

A private account, a company account: running several Google accounts in the same browser is the normal case for me.

Only the bookmarks cause trouble. Bookmark the calendar of your company account, and a few weeks later you land in your private calendar. Or the other way round. Miss it, and you agree to the wrong slots. All that although nobody touched the bookmark.

The way Google writes the account context into the address is to blame:

https://calendar.google.com/calendar/u/1/r

That number is not an account ID, it is an index and therefore a snapshot. Which is exactly why the bookmark does not work. The solution follows right away, the explanation can be found further down.

With this small form you can generate links that keep working, locally and in a few clicks.

Permanent link
Open link

Why the number is useless#

The number behind /u/ is the position in the browser’s sign-in order. The account signed in first gets /u/0/ and is also the default account, the second one /u/1/, the third /u/2/. That count belongs to the browser’s cookie state, not to the account.

Other services carry the same value in the query parameter authuser:

https://docs.google.com/spreadsheets/d/xxxxx/edit?authuser=1
https://console.cloud.google.com/home/dashboard?authuser=2

Switching accounts through the menu in the top right does not change the assignment. It can still flip, and more often than you would think:

  • After signing out and back in in a different order, /u/1/ turns into /u/0/.
  • Cookies deleted, browsing data cleared, “delete everything on exit” enabled.
  • Remove one account and every account behind it moves up a position.
  • Every other device, every other browser and every private window counts for itself.
  • A colleague opens the shared link: for her, /u/1/ points at an entirely different account.

The silent failure is what makes this unpleasant. The link keeps working, it just opens the wrong calendar. You usually notice once an appointment sits in the wrong place.

The problem is not exotic, by the way. A Google-owned open source project documents it as a bug, with the remarkable observation that the correct index cannot be determined through any API.

Instead of a position, you tell Google directly which account you mean. The route goes through Google’s account chooser:

https://accounts.google.com/AccountChooser?source=ogb&continue=https%3A%2F%2Fcalendar.google.com%2Fcalendar%2Fr&Email=marco%40example.com

Taken apart, that is only three building blocks:

ParameterMeaning
sourceOrigin marker, ogb stands for the “One Google Bar” (pure cosmetics).
continueThe target URL, fully URL-encoded. This is where you go after choosing the account.
EmailThe e-mail address of the account to be used.

Google looks up the account for that address in the current session, works out the matching index itself and forwards you. If the account is not signed in, you end up on the sign-in page, with the address already filled in.

Alternative solutions?#

The parameter authuser works in principle too. On many services it accepts the address itself alongside a number:

https://calendar.google.com/calendar/r?authuser=marco@example.com

Shorter and more readable, yet still the worse choice. authuser only picks between the accounts currently signed in in this browser. If you are signed in somewhere, just not in the account from the link, Google does not ask: it silently opens a different account, without a sign-in page and without a warning. Which puts you back at the problem the link was supposed to solve.

There are also older reports that something like

https://calendar.google.com/calendar/u/marco@example.com/r

used to work. As of September 2026 I cannot confirm that. It did not work for me.

Sources#

About the Author Marco Borm

Marco Borm

Founder of the software company sekskant based in Hoppegarten near Berlin. 26 years of professional experience as a team lead, developer, and bridge between customers, product management and software engineering.

More Articles

  • Payload + Turbopack + Windows: How to fix "Can't find stylesheet to import."
    DE|EN
    Apr 15, 2026
    Payload + Turbopack + Windows: How to fix "Can't find stylesheet to import."

    If you also have trouble running turbopack on windows and get "Can't find stylesheet to import." errors, this might help you.

  • OVHcloud + Managed PostgreSQL: Correct certificate validation with node "pg" module and payload
    DE|EN
    Apr 14, 2026
    OVHcloud + Managed PostgreSQL: Correct certificate validation with node "pg" module and payload

    Many managed database services, like the one from OVHcloud, offer TLS-secured connections to your database. But do you understand whether that actually makes you "secure" in your context, or whether you are still a good target for man-in-the-middle attacks? This article shares some insights from my own experience.

  • Smartphone Training for Seniors on March 17, 2026 in Hönow/Hoppegarten
    DE|EN
    Mar 29, 2026
    Smartphone Training for Seniors on March 17, 2026 in Hönow/Hoppegarten

    This year, I am once again offering smartphone training sessions for seniors on several dates. One of them took place on March 17.