# Connect Google BigQuery

> The Google Cloud roles you need, the shared and per-user sign-in choices, whose account the connection queries as, how live queries are billed, and how to fix sign-in and permission errors.

Connect · 6 min read · Updated 2026-10-30

Connect BigQuery with your Google account and Golden queries it live. Nothing is copied out: every chart runs as a BigQuery job in your project. This page covers the Google Cloud setup, what happens after you connect, and how to read the errors.

## Before you start

The person who signs in needs two things in Google Cloud:

- BigQuery Job User on the project you enter as Project ID. Golden runs every query as a job in that project, so that's also where the cost lands.
- BigQuery Data Viewer on the datasets you want to analyze.

Golden asks Google for read-only BigQuery access, nothing else. It can't change your data or touch other Google services.

## Shared or per-user sign-in

When you create a new BigQuery connection, the dialog offers two ways to sign in:

- Google sign-in (shared by everyone) - the connection queries as the one person who signed in, so everyone with access to the connection reads data through that account. This is the default.
- Google sign-in (per-user) - each member signs in with their own Google account, and their queries run as them. The customer's own BigQuery permissions then decide what each person sees.

> **Warning:** A shared BigQuery connection queries as whoever signed in. Save it to a shared space and everyone in that space reads data through that one account, so sign in with an account whose access you're happy to share. Pick per-user instead when each member should query with their own Google access.

> **Note:** The per-user choice is offered only while creating a new connection. Editing an existing connection, and the Create Analysis flow's quick connect, use the shared sign-in.

## Connect

1. In a space, click Create and choose Saved connection, then pick Google BigQuery.
2. Enter the Project ID (lowercase, for example my-analytics-123).
3. Choose a sign-in method - Google sign-in (shared by everyone) or Google sign-in (per-user).
4. Click Connect with Google and approve the read-only access. Google shows this screen every time you connect or reconnect. With per-user sign-in, each teammate signs in the first time they open the connection.

More detail on the dialog is in Set up a warehouse connection.

## Pick your data

After you save, the import wizard opens with the title "Import Schema from <connection>". It has three tabs: Browse Tables, Query Builder, and Custom SQL.

- Browse Tables: search with "Search tables, columns, descriptions...", then tick up to 10 tables. Golden suggests relationships between them so you can chart across them.
- Query Builder: pick a table, columns, and filters, then click Preview Query to see the generated SQL. Copy SQL or Edit in Custom SQL takes it further.
- Custom SQL: write a single read-only SELECT. Validate Query checks it before you import. Anything that writes, or more than one statement, is refused with "Only read-only SELECT queries are allowed here".
- Click Import Schema to finish.

> **Tip:** Golden remembers the table list for up to 24 hours so the browser opens fast. If a table you just created is missing, click the refresh icon ("Refresh from the warehouse") or the Refresh button next to "Don't see your schema or table?".

- The browser lists the datasets in your Project ID, plus a group of Google public datasets for trying things out: usa_names, chicago_taxi_trips, new_york_citibike, san_francisco_311, baseball, github_repos, google_trends, world_bank_intl_education, noaa_gsod, and new_york_taxi_trips.
- Data in another project doesn't appear in the browser. Reach it with Custom SQL and a fully qualified name, for example `other-project.dataset.table`.
- Row counts and column details load for the first 20 datasets. Views never show a row count.

## How queries and refresh work

BigQuery connections are live. Import Schema saves the shape of your tables, never the rows. Every chart, filter, and AI question runs a fresh query in BigQuery, so what you see is always current.

- Golden reuses a chart's result for 5 minutes, so flipping between sheets doesn't re-run the same query.
- There's nothing to schedule. Reopen a dashboard and it queries the warehouse again.

## Keep an eye on cost

BigQuery bills by data scanned, and Golden doesn't set a cap per query. A few habits keep it in check:

- Point Golden at partitioned or clustered tables, and filter on the partition column.
- Select the columns you need in Custom SQL instead of SELECT *.
- If a chart times out in Golden, the job keeps running in BigQuery until it finishes and is still billed. Narrow the query rather than retrying it.
- Set a project-level quota in Google Cloud if you want a hard ceiling.

Browsing tables is cheap: the browser reads table metadata, not the tables.

## Limits

| Limit | Value |
| --- | --- |
| Rows per query | 50,000 |
| Chart query time | 120 seconds. After that the chart shows a timeout error. |
| Rows in a table chart | 50,000. Totals are still computed over every row. |
| Queries running at once | 4 per dataset. The rest wait their turn. |
| Query rate | 600 per minute per account. Past that: "Too many queries right now. Please wait a moment and try again." |
| Tables per import | 10 |

## Troubleshooting

| What you see | What to do |
| --- | --- |
| A Reconnect prompt saying your session expired | Click Reconnect on the chart and sign in with Google again. |
| Reconnect needed, "Ask the connection's owner to reconnect it." | Only the person who set up the connection can reconnect it. Ask them. |
| A message that your organization's Google security policy requires periodic re-authentication | Your Google admin requires regular sign-in. Reconnect when asked; it's expected. |
| Invalid Project ID. | Use the project ID, not its display name: 6 to 30 lowercase letters, digits, or dashes. |
| Failed to list BigQuery datasets | Check the Project ID and that your account has BigQuery Job User and Data Viewer. |
| A quota or rate-limit error | BigQuery is busy. Wait a moment and try again. |

### Related

- [Set up a warehouse connection](https://goldenanalytics.com/docs/connector-setup)
- [Bring in a table with custom SQL](https://goldenanalytics.com/docs/custom-sql-tables)
- [Model several tables together](https://goldenanalytics.com/docs/multi-table-data-models)
- [Troubleshooting](https://goldenanalytics.com/docs/troubleshooting)

Source: https://goldenanalytics.com/docs/connect-bigquery
