Before you start
- The Search Console property, exactly as Search Console names it. A URL-prefix property looks like
https://www.example.com/; a Domain property looks likesc-domain:example.com. They are different properties, so use the one you report on. - A Google service account connection under Security & Access. Add a connection, choose Service Account, set Provider to Google, paste the JSON key into Service Account Key (JSON) and click Save Connection.
- Access on the property. In Search Console, open Settings > Users and permissions and add the service account's email address as a user on that exact property.
The Google sign-in connection asks Google for Analytics, Tag Manager and Ads access, not Search Console. A service account that has been added to the property is the dependable choice.
If you leave Google Connection on None (use default service account), Lens uses the shared TagPipes service account. That only works once its email address has been added to your property; ask TagPipes support for the address.
Create the table
- Go to Configure > Data Tables, click + New Table, and choose Google Search Console.
- Enter a Table Name, such as "Organic Search Performance".
- Pick your service account under Google Connection.
- Enter the Property (Site URL), or click Browse to list the properties the connection can see and pick one.
- Click Test. Lens checks that the connection can read Search Analytics data for that property, not only see it.
Choose what to pull
| Setting | Options | Default | Notes |
|---|---|---|---|
| Search Type | Web, Image, Video, News, Discover, Google News | Web | One search type per table |
| Data State | Final (only finalized), All (incl. fresh) | Final | Final is recommended |
| Aggregation | Auto, By Property, By Page | Auto | Counts differ by aggregation. Domain properties usually use By Property |
Under Dimensions, tick any of Query, Page, Country, Device and Search Appearance. Date is always included, so leaving every box clear gives one row per day.
Search Appearance cannot be combined with any other dimension; Search Console does not allow it. Put it on its own table.
Metrics
The metrics are fixed and always included: Clicks, Impressions, CTR and Average Position. Lens stores clicks and impressions as counts and works out CTR and average position when a board adds rows up, so totals across days, pages or queries stay correct instead of averaging per-row rates.
Search Console hides low-volume queries for privacy. A table that includes Query will total less than your site's real clicks and impressions. For trustworthy totals, use a table with date only, or date and page.
Set the date range and sync mode
| Setting | Default | Notes |
|---|---|---|
| Backfill Period | Last 90 days | Up to Last 16 months (max), which is roughly what Search Console keeps |
| Sync Mode | Incremental | Incremental re-pulls a trailing window and adds new days. Full Refresh reloads the whole backfill period |
| Incremental Refresh Window | 10 days | Days re-read on every sync, so days that were still settling are replaced once final |
| Sync Schedule | Daily |
Click Create Table.
Search Console finalizes data about two to three days late, so every sync stops three days before today. The newest day on your board is three days ago, and that is expected.
Check it worked
When the table is active, open Search Console's Performance report for the same property, search type and date, and compare clicks and impressions for one day at least three days old. Compare a table with no Query dimension; a table with Query will read lower.
Troubleshooting
| What you see | What to do |
|---|---|
| Test says the identity does not have access to the property | Add the connection's service account email as a user on that exact property. Check you used the right property type: https://www.example.com/ and sc-domain:example.com are separate properties |
| Test says the identity can see the property but cannot query it | The user's permission is not enough, or not verified yet. Make it a Full or Restricted user on the property in Search Console, then test again |
| The sync fails saying no finalized data is available yet | The backfill or refresh window is too short to reach a finalized day. Use a longer Backfill Period |
| The sync stops at the row cap | The table is too detailed. Remove a dimension (Query and Page together grow fastest) or shorten the backfill |
| Totals are lower than Search Console | The table includes Query. See the warning above |