Google Search Console integration summary

Stitch’s Google Search Console integration replicates data using the Google Search Console API. Refer to the Schema section for a list of objects available for replication.

Google Search Console feature snapshot

A high-level look at Stitch's Google Search Console (v1) integration, including release status, useful links, and the features supported in Stitch.

STITCH
Release status

Released on September 2, 2020

Supported by

Stitch

Stitch plan

Standard

API availability

Available

Singer GitHub repository

singer-io/tap-google-search-console

REPLICATION SETTINGS
Anchor Scheduling

Supported

Advanced Scheduling

Supported

Table-level reset

Unsupported

Configurable Replication Methods

Unsupported

DATA SELECTION
Table selection

Supported

Column selection

Supported

Select all

Supported

TRANSPARENCY
Extraction Logs

Supported

Loading Reports

Supported

Connecting Google Search Console

Google Search Console setup requirements

To set up Google Search Console in Stitch, you need:

  • Admin access in Google Search Console. Admin access is required in your Google Search Console account to change settings required to connect Stitch.


Step 1: Set up your Google Search Console

  1. Login to your Google account and navigate to Google Search Console.
  2. Add the domains or websites for your organization. If adding a domain, it will cover all URLs across all of its subdomains. If adding a website, only the entered websites will be counted for.
  3. Verify your site ownership by clicking CONTINUE. Depending on your verification method, this can take up to a day.
  4. Once your link(s) are verified, add them to the sitemap.xml files in the Sitemaps section of your Google Search Console account. Click Submit.

Step 2: Create a Google Search Console project

  1. Login to your Google Cloud Console.
  2. Click Create New Project.
  3. Enter a Project name and select a project Location.
  4. Click CREATE.

Step 3: Enable Google Search Console API

  1. Login to your Google Cloud Platform account. Make sure you’re in the project that you want to use for your Google Search Console integration.
  2. Select APIs & Services from the left-hand menu panel. This will take you to the APIs & Services dashboard.
  3. In the dashboard, click ENABLE APIS AND SERVICES. You will be redirected to the API Library.
  4. Search for Google Search Console and select Google Search Console API.
  5. Click ENABLE.

Step 4: Verify API domain

  1. Staying in the APIs & Services section, click on Domain verification in the left-hand menu panel.
  2. Click Add domain.
  3. Add the domain you’re using for this project.
  1. Staying in the APIs & Services section, click on the OAuth consent screen in the left-hand menu panel.
  2. Select your project.
  3. Make the Application type Public.
  4. Make the Application name tap-google-search-console.
  5. Optionally, you can add an image for a logo to help you identify your app.
  6. In the Support email field, enter your email that you will use for this app.
  7. In the Scope section, click Add scope.
  8. Add the following scope: Google Search Console API ../auth/webmasters.readonly.
  9. In the Authorized domains section, add the domains that you added to Google Search Console in step 1.
  10. Click SAVE.
  11. You will be taken to a screen that says OAuth grant limits. The default limit is 100 grants per minute, per day. You can request to raise the grant limit for your project by clicking Raise limit. You can also change the time interval grant resets. The options for time intervals are: 1h, 6h, 1d,, 7d, and 30d.

Step 6: Create OAuth credentials

  1. Staying in the APIs & Services section, click on Credentials in the left-hand menu panel.
  2. Click on the Create credentials dropdown menu.
  3. Select OAuth client ID.
  4. In the Create OAuth client ID page, select Web application for the Application type.
  5. In the Name field, enter tap-google-search-console.
  6. In the Authorized redirect URIs section, add the domains that you added in step 1.
  7. Click CREATE.

Step 7: Add Google Search Console as a Stitch data source

  1. Sign into your Stitch account.
  2. On the Stitch Dashboard page, click the Add Integration button.

  3. Click the Google Search Console icon.

  4. Enter a name for the integration. This is the name that will display on the Stitch Dashboard for the integration; it’ll also be used to create the schema in your destination.

    For example, the name “Stitch Google Search Console” would create a schema called stitch_google_search_console in the destination. Note: Schema names cannot be changed after you save the integration.

  5. In the Site Urls field, enter the URLs you added to your sitemap file in step 1. The URLs should be comma delimited and begin with https:// or http://. Example: https://yoursite.com, http://yourothersite.com.

Note: If you get an error saying that the user doesn’t have sufficient permissions or that the URL is not a verified Google Search Console site, try replacing https:// or http:// with sc-domain:. Example: sc-domain:yoursite.com.

Step 8: Define the historical replication start date

The Sync Historical Data setting defines the starting date for your Google Search Console integration. This means that data equal to or newer than this date will be replicated to your data warehouse.

Change this setting if you want to replicate data beyond Google Search Console’s default setting of 1 year. For a detailed look at historical replication jobs, check out the Syncing Historical SaaS Data guide.

Step 9: Create a replication schedule

In the Replication Frequency section, you’ll create the integration’s replication schedule. An integration’s replication schedule determines how often Stitch runs a replication job, and the time that job begins.

Google Search Console integrations support the following replication scheduling methods:

To keep your row usage low, consider setting the integration to replicate less frequently. See the Understanding and Reducing Your Row Usage guide for tips on reducing your usage.

Step 10: Set objects to replicate

The last step is to select the tables and columns you want to replicate. Learn about the available tables for this integration.

Note: If a replication job is currently in progress, new selections won’t be used until the next job starts.

For Google Search Console integrations, you can select:

  1. Individual tables and columns

  2. All tables and columns

Click the tabs to view instructions for each selection method.

  1. In the integration’s Tables to Replicate tab, locate a table you want to replicate.
  2. To track a table, click the checkbox next to the table’s name. A blue checkmark means the table is set to replicate.

  3. To track a column, click the checkbox next to the column’s name. A blue checkmark means the column is set to replicate.

  4. Repeat this process for all the tables and columns you want to replicate.
  5. When finished, click the Finalize Your Selections button at the bottom of the screen to save your selections.
  1. Click into the integration from the Stitch Dashboard page.
  2. Click the Tables to Replicate tab.

  3. In the list of tables, click the box next to the Table Names column.
  4. In the menu that displays, click Track all Tables and Fields:

    The Track all Tables and Fields menu in the Tables to Replicate tab

  5. Click the Finalize Your Selections button at the bottom of the page to save your data selections.

Initial and historical replication jobs

After you finish setting up Google Search Console, its Sync Status may show as Pending on either the Stitch Dashboard or in the Integration Details page.

For a new integration, a Pending status indicates that Stitch is in the process of scheduling the initial replication job for the integration. This may take some time to complete.

Free historical data loads

The first seven days of replication, beginning when data is first replicated, are free. Rows replicated from the new integration during this time won’t count towards your quota. Stitch offers this as a way of testing new integrations, measuring usage, and ensuring historical data volumes don’t quickly consume your quota.


Google Search Console table reference

performance_report_country

The performance_report_country table contains information about the performance of your sites in Google searches. This particular table is filtered and grouped by country.

Replication Method

Key-based Incremental

Primary Keys

site_url

search_type

country

date

Replication Key

date

Useful links

Google Search Console documentation

performance_report_country schema on GitHub

Google Search Console API method

Join performance_report_country with on
sites
performance_report_country.site_url = sites.site_url
sitemaps
performance_report_country.site_url = sitemaps.site_url
performance_report_custom
performance_report_country.site_url = performance_report_custom.site_url
performance_report_country.search_type = performance_report_custom.search_type
performance_report_date
performance_report_country.site_url = performance_report_date.site_url
performance_report_country.search_type = performance_report_date.search_type
performance_report_device
performance_report_country.site_url = performance_report_device.site_url
performance_report_country.search_type = performance_report_device.search_type
performance_report_page
performance_report_country.site_url = performance_report_page.site_url
performance_report_country.search_type = performance_report_page.search_type
performance_report_query
performance_report_country.site_url = performance_report_query.site_url
performance_report_country.search_type = performance_report_query.search_type

clicks

INTEGER

country

STRING

ctr

NUMBER

date

DATE-TIME

impressions

INTEGER

position

NUMBER

search_type

STRING

site_url

STRING

performance_report_custom

The performance_report_custom table contains information about the performance of your sites in Google searches. This particular table is filtered and grouped by your custom dimensions.

Replication Method

Key-based Incremental

Primary Keys

search_type

site_url

dimensions_hash_key

date

Replication Key

date

Useful links

Google Search Console documentation

performance_report_custom schema on GitHub

Google Search Console API method

Join performance_report_custom with on
sites
performance_report_custom.site_url = sites.site_url
sitemaps
performance_report_custom.site_url = sitemaps.site_url
performance_report_country
performance_report_custom.site_url = performance_report_country.site_url
performance_report_custom.search_type = performance_report_country.search_type
performance_report_date
performance_report_custom.site_url = performance_report_date.site_url
performance_report_custom.search_type = performance_report_date.search_type
performance_report_device
performance_report_custom.site_url = performance_report_device.site_url
performance_report_custom.search_type = performance_report_device.search_type
performance_report_page
performance_report_custom.site_url = performance_report_page.site_url
performance_report_custom.search_type = performance_report_page.search_type
performance_report_query
performance_report_custom.site_url = performance_report_query.site_url
performance_report_custom.search_type = performance_report_query.search_type

clicks

INTEGER

country

STRING

ctr

NUMBER

date

DATE-TIME

device

STRING

dimensions_hash_key

STRING

impressions

INTEGER

page

STRING

position

NUMBER

query

STRING

search_type

STRING

site_url

STRING

performance_report_date

The performance_report_date table contains information about the performance of your sites in Google searches. This particular table is filtered and grouped by date.

Replication Method

Key-based Incremental

Primary Keys

search_type

site_url

date

Replication Key

date

Useful links

Google Search Console documentation

performance_report_date schema on GitHub

Google Search Console API method

Join performance_report_date with on
sites
performance_report_date.site_url = sites.site_url
sitemaps
performance_report_date.site_url = sitemaps.site_url
performance_report_country
performance_report_date.site_url = performance_report_country.site_url
performance_report_date.search_type = performance_report_country.search_type
performance_report_custom
performance_report_date.site_url = performance_report_custom.site_url
performance_report_date.search_type = performance_report_custom.search_type
performance_report_device
performance_report_date.site_url = performance_report_device.site_url
performance_report_date.search_type = performance_report_device.search_type
performance_report_page
performance_report_date.site_url = performance_report_page.site_url
performance_report_date.search_type = performance_report_page.search_type
performance_report_query
performance_report_date.site_url = performance_report_query.site_url
performance_report_date.search_type = performance_report_query.search_type

clicks

INTEGER

ctr

NUMBER

date

DATE-TIME

impressions

INTEGER

position

NUMBER

search_type

STRING

site_url

STRING

performance_report_device

The performance_report_device table contains information about the performance of your sites in Google searches. This particular table is filtered and grouped by the user’s device type.

Replication Method

Key-based Incremental

Primary Keys

search_type

site_url

device

date

Replication Key

date

Useful links

Google Search Console documentation

performance_report_device schema on GitHub

Google Search Console API method

Join performance_report_device with on
sites
performance_report_device.site_url = sites.site_url
sitemaps
performance_report_device.site_url = sitemaps.site_url
performance_report_country
performance_report_device.site_url = performance_report_country.site_url
performance_report_device.search_type = performance_report_country.search_type
performance_report_custom
performance_report_device.site_url = performance_report_custom.site_url
performance_report_device.search_type = performance_report_custom.search_type
performance_report_date
performance_report_device.site_url = performance_report_date.site_url
performance_report_device.search_type = performance_report_date.search_type
performance_report_page
performance_report_device.site_url = performance_report_page.site_url
performance_report_device.search_type = performance_report_page.search_type
performance_report_query
performance_report_device.site_url = performance_report_query.site_url
performance_report_device.search_type = performance_report_query.search_type

clicks

INTEGER

ctr

NUMBER

date

DATE-TIME

device

STRING

impressions

INTEGER

position

NUMBER

search_type

STRING

site_url

STRING

performance_report_page

The performance_report_page table contains information about the performance of your sites in Google searches. This particular table is filtered and grouped by your landing page URLs that show up in Google search results.

Replication Method

Key-based Incremental

Primary Keys

search_type

site_url

page

date

Replication Key

date

Useful links

Google Search Console documentation

performance_report_page schema on GitHub

Google Search Console API method

Join performance_report_page with on
sites
performance_report_page.site_url = sites.site_url
sitemaps
performance_report_page.site_url = sitemaps.site_url
performance_report_country
performance_report_page.site_url = performance_report_country.site_url
performance_report_page.search_type = performance_report_country.search_type
performance_report_custom
performance_report_page.site_url = performance_report_custom.site_url
performance_report_page.search_type = performance_report_custom.search_type
performance_report_date
performance_report_page.site_url = performance_report_date.site_url
performance_report_page.search_type = performance_report_date.search_type
performance_report_device
performance_report_page.site_url = performance_report_device.site_url
performance_report_page.search_type = performance_report_device.search_type
performance_report_query
performance_report_page.site_url = performance_report_query.site_url
performance_report_page.search_type = performance_report_query.search_type

clicks

INTEGER

ctr

NUMBER

date

DATE-TIME

impressions

INTEGER

page

STRING

position

NUMBER

search_type

STRING

site_url

STRING

performance_report_query

The performance_report_query table contains information about the performance of your sites in Google searches. This particular table is filtered and grouped by the users’ search queries that resulted in your sites appearing in the search results.

Replication Method

Key-based Incremental

Primary Keys

search_type

site_url

query

date

Replication Key

date

Useful links

Google Search Console documentation

performance_report_query schema on GitHub

Google Search Console API method

Join performance_report_query with on
sites
performance_report_query.site_url = sites.site_url
sitemaps
performance_report_query.site_url = sitemaps.site_url
performance_report_country
performance_report_query.site_url = performance_report_country.site_url
performance_report_query.search_type = performance_report_country.search_type
performance_report_custom
performance_report_query.site_url = performance_report_custom.site_url
performance_report_query.search_type = performance_report_custom.search_type
performance_report_date
performance_report_query.site_url = performance_report_date.site_url
performance_report_query.search_type = performance_report_date.search_type
performance_report_device
performance_report_query.site_url = performance_report_device.site_url
performance_report_query.search_type = performance_report_device.search_type
performance_report_page
performance_report_query.site_url = performance_report_page.site_url
performance_report_query.search_type = performance_report_page.search_type

clicks

INTEGER

ctr

NUMBER

date

DATE-TIME

impressions

INTEGER

position

NUMBER

query

STRING

search_type

STRING

site_url

STRING

sitemaps

The sitemaps table contains information about the sitemap entries in your Google Search Console.

Replication Method

Full Table

Primary Keys

site_url

path

last_submitted

Useful links

Google Search Console documentation

sitemaps schema on GitHub

Google Search Console API method

Join sitemaps with on
sites
sitemaps.site_url = sites.site_url
performance_report_country
sitemaps.site_url = performance_report_country.site_url
performance_report_custom
sitemaps.site_url = performance_report_custom.site_url
performance_report_date
sitemaps.site_url = performance_report_date.site_url
performance_report_device
sitemaps.site_url = performance_report_device.site_url
performance_report_page
sitemaps.site_url = performance_report_page.site_url
performance_report_query
sitemaps.site_url = performance_report_query.site_url

contents

ARRAY

indexed

INTEGER

submitted

INTEGER

type

STRING

errors

INTEGER

is_pending

BOOLEAN

is_sitemaps_index

BOOLEAN

last_downloaded

DATE-TIME

last_submitted

DATE-TIME

path

STRING

site_url

STRING

type

STRING

warnings

INTEGER

sites

The sites contains information about your Google Search Console sites at a permission level.

Replication Method

Full Table

Primary Key

site_url

Useful links

Google Search Console documentation

sites schema on GitHub

Google Search Console API method

Join sites with on
sitemaps
sites.site_url = sitemaps.site_url
performance_report_country
sites.site_url = performance_report_country.site_url
performance_report_custom
sites.site_url = performance_report_custom.site_url
performance_report_date
sites.site_url = performance_report_date.site_url
performance_report_device
sites.site_url = performance_report_device.site_url
performance_report_page
sites.site_url = performance_report_page.site_url
performance_report_query
sites.site_url = performance_report_query.site_url

permission_level

STRING

site_url

STRING


Questions? Feedback?

Did this article help? If you have questions or feedback, feel free to submit a pull request with your suggestions, open an issue on GitHub, or reach out to us.