7 min read
Getting your Google Search Console data into BigQuery has its benefits.
More complete SEO data
BigQuery gives you access to far more Search Console rows than the normal GSC interface, which is useful for long-tail queries, pages, countries, devices, and deeper SEO analysis.
Automatic daily exports
Once connected, Search Console sends the data to BigQuery every day without needing scripts, manual exports, or paid third-party connectors.
Better reporting and analysis
You can run SQL queries, build dashboards, find underperforming pages, analyze CTR problems, and later combine GSC data with GA4, CRM, revenue, or other business data.
We are connecting Google Search Console Bulk Data Export with Google BigQuery.
This setup automatically sends your Google Search Console data to BigQuery every day. You can then work with more complete Search Console data than you normally see in the Search Console interface.
We will use this Google Cloud project:
seo-warehouse-your-company-name-hereThe BigQuery dataset for Search Console will be:
searchconsole_your_website_nameThe underscores are important here.
The dataset location will be, as an example:
Belgium (europe-west1) Go to Google Cloud Console.
At the top of the page, click the project selector and choose the correct project.
The project name should be:
SEO WarehouseThe project ID should be:
seo-warehouse-your-company-name-hereYou need to make sure you are working within the project, not just within the organization.
In Google Cloud Console, go to:
Billing > Account managementConfirm that the project is linked to the correct billing account.
For this setup, the billing account is:
SEO WarehouseBigQuery requires billing to be enabled, even when your usage stays inside the free tier. For most normal Search Console exports, your cost should remain very low.
In Google Cloud Console, use the search bar at the top of the page.
Search for:
BigQuery APIOpen it and click Enable, or confirm that it already says Manage.
Then search for:
BigQuery Storage APIOpen it and click Enable, or confirm that it already says Manage.
We need both APIs enabled before the Search Console export can work correctly.
In Google Cloud Console, go to:
IAM & Admin > IAMClick:
Grant accessIn the New principals field, add this service account:
[email protected]This is the Google service account that Search Console uses to export your data into BigQuery.
Give the Search Console service account these two roles:
BigQuery Job User
BigQuery Data EditorThe technical role names are:
roles/bigquery.jobUser
roles/bigquery.dataEditorThis is important. BigQuery User is not the same as BigQuery Job User. For Search Console Bulk Data Export, the service account needs BigQuery Job User.
After adding the roles, click Save.
Your own Google account also needs the correct BigQuery access if you want to run queries, preview data, or create test tables.
For setup and testing, give yourself these roles on the project:
BigQuery Job User
BigQuery Data EditorBigQuery Job User allows you to run queries.
BigQuery Data Editor allows you to create and edit datasets and tables.
If another user only needs to view data and run SELECT queries, give that user:
BigQuery Data Viewer
BigQuery Job UserWe should not grant normal users BigQuery Data Editor access to the Search Console dataset unless they really need it.
You only need this step if Google Cloud refuses to add the Search Console service account.
If you see an error mentioning:
iam.allowedPolicyMemberDomainsthen the organization is blocking service accounts from outside the organization domain.
To fix this, go to:
IAM & Admin > Organization PoliciesSearch for:
Domain Restricted SharingThen, manage the policy at the project level only.
Use these settings:
Policy source: Override parent's policy
Policy enforcement: Replace
Policy values: Allow AllWe should only do this for the Google Cloud project used for this setup:
seo-warehouse-your-company-name-hereDo not apply this broadly across the whole organization unless you fully understand the security impact.
This part is done inside Google Search Console, not inside Google Cloud.
The Google account used to configure Bulk Data Export must be an Owner of the Search Console property. He does not have to be the verified owner.
A Full user is not enough.
The current verified owner should do this:
If the user is already listed as Full or Restricted, click the three-dot menu next to the user and change the permission to Owner.
After the account has Owner access, open an incognito window and sign in with that account.
Then go to:
Google Search Console > Select property > Settings > Bulk data exportFill in the form with the following values:
| Field | Value |
|---|---|
| Cloud project ID | seo-warehouse-your-company-name-here |
| Dataset name | searchconsole_your_website_name |
| Dataset location | Belgium (europe-west1) |
Then click Continue.
If the Continue button is greyed out, the signed-in account is probably not an Owner of the Search Console property.
After you click Continue, Google Search Console will validate the setup.
If the validation succeeds, property owners should receive a confirmation email.
The first export can take 24 to 48 hours to appear in BigQuery.
During this time, do not manually create the Search Console export tables. Let Google create them automatically.
After the first export runs, open BigQuery and expand the project:
seo-warehouse-your-company-name-hereYou should see a dataset called:
searchconsole_your_website_nameInside that dataset, you should see these tables:
ExportLog
searchdata_site_impression
searchdata_url_impressionThe structure should look like this:
seo-warehouse-your-company-name-here
searchconsole_your_website_name
ExportLog
searchdata_site_impression
searchdata_url_impressionOnce the tables exist, run this query in BigQuery:
SELECT
data_date,
SUM(clicks) AS total_clicks,
SUM(impressions) AS total_impressions,
SAFE_DIVIDE(SUM(clicks), SUM(impressions)) AS ctr,
AVG(position) AS avg_position
FROM `seo-warehouse-your-compnay-name-here.searchconsole_your_website_name.searchdata_site_impression`
GROUP BY data_date
ORDER BY data_date DESC;If the export is working, you should see rows by date with clicks, impressions, CTR, and average position.
You can also check the export log table with this query:
SELECT *
FROM `seo-warehouse-your-company-name-here.searchconsole_your_website_name.ExportLog`
ORDER BY data_date DESC
LIMIT 30;This table helps you confirm that Search Console exports are running successfully.
Once the Search Console tables exist, you can set partition expiration to automatically delete old data and control storage growth.
For around 16 months of data retention, use 488 days:
ALTER TABLE `seo-warehouse-your-company-name-here.searchconsole_your_website_name.searchdata_site_impression`
SET OPTIONS (partition_expiration_days = 488);
ALTER TABLE `seo-warehouse-your-company-name-here.searchconsole_your_website_name.searchdata_url_impression`
SET OPTIONS (partition_expiration_days = 488);Do not change the table schema. Adding, removing, or renaming columns can break the Search Console export.
To avoid unexpected costs, set up a small-budget alert in Google Cloud.
Go to:
Billing > Budgets and alerts > Create budgetA small alert, for example, 5 euros per month, is usually enough as a safety warning.
If the Continue button is greyed out in Search Console, the signed-in account is probably not an Owner of the Search Console property.
You can fix this by asking the current verified owner to add the account as an Owner.
If BigQuery says the user is missing:
bigquery.jobs.creategive that user this role:
BigQuery Job UserThis allows the user to run BigQuery jobs, including SQL queries.
If a user clicks a table or opens Preview and gets a permission error, give that user:
BigQuery Data ViewerIf the user also needs to run SELECT queries, give:
BigQuery Data Viewer
BigQuery Job UserIf BigQuery shows an error saying the location is inconsistent, for example US versus europe-west1, open the query settings.
Set the processing location to:
europe-west1This matches the Search Console dataset location:
Belgium (europe-west1)If the searchconsole dataset does not appear after 48 hours, check the Bulk Data Export page in Search Console.
Go to:
Search Console > Settings > Bulk data exportAlso confirm that the service account still has these roles in Google Cloud IAM:
BigQuery Job User
BigQuery Data EditorCheck that the project ID was entered correctly:
seo-warehouse-your-company-name-hereAlso check that the dataset location was set to:
Belgium (europe-west1)| Check | Expected Result |
|---|---|
| Google Cloud project | seo-warehouse-your-company-name-here |
| Billing | Linked to SEO Warehouse |
| APIs | BigQuery API and BigQuery Storage API enabled |
| Search Console service account | [email protected] |
| Service account roles | BigQuery Job User and BigQuery Data Editor |
| Search Console permission | Configurator account is Owner |
| Bulk export project ID | seo-warehouse-your-company-name-here |
| Bulk export dataset name | searchconsole_your_website_name. |
| Bulk export dataset location | Belgium (europe-west1) |
| Expected BigQuery tables | ExportLog, searchdata_site_impression, searchdata_url_impression |
We connect Google Search Console Bulk Data Export with BigQuery by preparing the Google Cloud project, enabling billing, enabling the BigQuery APIs, adding the Search Console export service account, giving it BigQuery Job User and BigQuery Data Editor, making sure your Search Console account is an Owner, and then configuring Bulk Data Export in Search Console with the project ID, dataset name, and Belgium location.
After the setup is accepted, you wait 24 to 48 hours. The searchconsole dataset and its export tables should then appear in BigQuery automatically.
What some of our customers had to say:
EXCELLENT
Based on 38 reviews
Posted on Google![]()
Denis Cojocaru13/02/2026Trustindex verifies that the original source of the review is Google.
Cea mai bună agenție SEO din București, Sector 6. Staful știe ce face, am avut rezultate foarte bune cu ei!Posted on Google![]()
Georg Wittb25/01/2026Trustindex verifies that the original source of the review is Google.
A friend recommended me this seo agency in Bucharest. After working with them I can say, they are very professional & they really understand how it improve your digital presence.Posted on Google![]()
Carmine D'Onofrio25/01/2026Trustindex verifies that the original source of the review is Google.
I was pleasantly surprized to find the best SEO agency în Romania, right here în Sector 6 of all places. I highly recommend them.Posted on Google![]()
Mircea Popescu23/01/2026Trustindex verifies that the original source of the review is Google.
Locuiesc in București, sector 6 și am fost surprins să aflu că există o agenție SEO fix lângă casă.Posted on Google![]()
dan albu10/01/2026Trustindex verifies that the original source of the review is Google.
Cea mai buna agentie SEO cu care am colaborat! Recomand cu incredere!!Posted on Google![]()
Mike Meyerson01/11/2025Trustindex verifies that the original source of the review is Google.
It's refreshing to work with an agency that truly understands the latest SEO guidelines and how to implement them effectively with WordPress sites. Their passion for helping clients succeed is evident. We saw impressive results much faster than we had expected. After some mediocre attempts with other providers, we're glad to have found them. Highly recommended!Posted on Google![]()
Enea Ionut21/10/2025Trustindex verifies that the original source of the review is Google.
Mii de multumiri Christiaan!!! Recomand cu incredere Website Squadron! Am colaborat pentru a ne imbunatati vizibilitatea online, iar rezultatele sunt clare. Strategia lor integrata de SEO, implementarea eficienta a campaniilor de Google Ads si optimizrea platformei WordPress au dus la o crestere vizibila a pozitiei noastre in clasamentul Google. Comunicarea fost excelenta, iar expertiza lor in domeniu este de necontestat. Un partener de incredere pentru crestere organica si platita.Posted on Google![]()
Fiona Kertalli09/10/2025Trustindex verifies that the original source of the review is Google.
We found the best seo agency in Bucharest. It is a pleasure to work with these guys.Posted on Google![]()
Buck south Landscaping30/09/2025Trustindex verifies that the original source of the review is Google.
"We get incredible results from this seo agency, sitiated in Romania of all places."Posted on Google![]()
Agustin Sanchez30/09/2025Trustindex verifies that the original source of the review is Google.
⭐️⭐️⭐️⭐️⭐️ “Website Squadron did an outstanding job building my website! They were professional, responsive, and really took the time to understand my business. The design looks clean, modern, and easy to use. I’ve already noticed more customers finding me online thanks to their work. Highly recommend Website Squadron for anyone looking to grow their business with a strong online presence!”
This is best for website owners, SEO teams, agencies, and businesses that want deeper Google Search Console reporting, especially when normal Search Console exports are too limited.
Google Search Console Bulk Data Export is free. BigQuery may have small usage costs, but most normal websites should stay within Google Cloud’s free BigQuery usage limits.
You need to contact Website Squadron and give us access to the correct Google Search Console property. We can then build all the reports for you.
This post was written by u/WebsiteCatalyst Hassan on 5 May 2026.
If you have any questions, try our FAQ.
I need an SEO wingman