Docs/Getting Started/Security and privacy
Getting Started

Security and privacy

What Querylab.io can and cannot see. Your queries run from your browser or the desktop app straight to BigQuery with your own Google credentials, and the results never pass through our servers. This page lists every kind of data the app handles, where it goes, and the few cases where something does reach our backend.

Querylab.io runs your queries with your own Google credentials. The request goes from your browser, or from the desktop app, straight to BigQuery, and the rows come straight back. Our backend never runs your queries and never sees your results.

Where each kind of data goes

DataWhere it goesReaches our servers?
Query resultsFrom BigQuery to your browser or the desktop appNever
SQL text, tabs, query historyStored on your deviceOnly if you turn on Store tabs on backend (encrypted) in Settings → Privacy
Table and column namesCached on your deviceOnly when you use Prism AI or AI completions
Shared linksEncrypted in your browser before uploadYes, encrypted. The key is only in the link, so we cannot read it
Saved queriesA Dataform repository in your own GCP projectOn the web, passed through without being stored. See Saved queries
Usage dataFeature usage, errors, and query cost statisticsYes, if you allow it. Never SQL text, names or values
Your Google tokenSee Your Google tokenWeb only, encrypted

Your Google token

Sign-inWhere the token is stored
Web appEncrypted with AES-256 on our servers, so your session renews without signing in again
Desktop, Google sign-inYour macOS Keychain. It never leaves your Mac
Desktop, local gcloudWherever gcloud keeps it. The app asks gcloud for a short-lived token and copies nothing

With Google sign-in, Querylab.io knows your email address, name and profile picture. That is how your account is identified.

Querylab.io asks for the BigQuery scope at sign-in and for other scopes only the first time you use a feature that needs them. The full list is on Authentication.

To revoke access, remove Querylab.io under Google Account → Third-party access. For gcloud, run gcloud auth application-default revoke.

If your company blocks third-party apps

Some Google Workspace admins allow only approved apps. If Continue with Google fails or waits for IT, use the desktop app with your gcloud sign-in:

gcloud auth application-default login

The app signs in through gcloud, which your company already allows if you use Google Cloud from the terminal. There is no Querylab.io grant for an admin to approve, and your credentials stay on your machine. Details: Use existing gcloud auth.

Saved queries

Saved queries live in a Dataform repository in your own GCP project, under your IAM policies. Google’s Dataform API does not accept calls from a browser, so on the web, saving or opening a saved query goes through our backend with your token. The backend passes the request to Google and stores nothing. This only happens when you use saved queries. The desktop app calls Google directly.

AI features

Prism AI and AI completions are off until you use them. When you do, your SQL and the names of the tables and columns involved go through our backend to the AI provider. Query result values are shared only if you allow it: Share Query Results Preview in Settings → Prism AI is set to Ask each time by default.

On the desktop you can use your own API key or an AI tool already installed on your Mac, such as Claude Code or Codex. These talk to the provider directly, without our backend.

Usage data

With your consent, the app sends feature usage, errors, and statistics about each query’s cost: bytes processed, slot time, and counts such as the number of joins. It never sends your SQL text, table, column, dataset or project names, or any values. You can turn it off in Settings → Privacy. The full list is in the Privacy Policy.

Without an account

The Playground needs no Google account. It runs on public sample data in a project we manage, so playground queries do go through our backend.