How to export Search Console data for the report
- In Search Console, pick the property, then open Performance, then Search results.
- Click the Date filter. For a monthly client report, choose the Compare tab and pick last 28 days against the previous period, or a custom range for last calendar month against the month before. Comparing is what gives the report its change figures.
- Leave Search type on Web unless the client cares about Image or News results. Any query, page or country filter you add narrows the whole export, which is useful for a report on one section of a site.
- Click Export at the top right and choose Download CSV. Not Excel or Google Sheets: the CSV zip is the one this tool reads.
- Add that zip above, as it is. There is no need to unzip it.
The zip holds one CSV per tab of the report: Queries, Pages, Countries, Devices, Search appearance and Dates, plus Filters, which records the settings you exported with. The generator reads all of them except Search appearance.
What the report shows, and how to read it
- Clicks and impressions are the site totals, with the change against the previous period when you exported a comparison. Clicks are visits from Google; impressions are how often the site appeared in results at all. Impressions up and clicks flat usually means new rankings low on the page, not a problem.
- Average CTR is clicks divided by impressions, shown as a change in percentage points. It falls naturally when a site starts appearing for more searches further down.
- Average position is weighted by impressions, the way Search Console works it out. Lower is better, so the report calls a fall from 14.6 to 14.0 "0.6 better".
- Clicks per day puts the two periods on top of each other. Weekends dipping is normal; a step down that stays down is the thing to explain.
- Top searches and top pages are sorted by clicks, with the change in clicks for each. The summary draft names the page that gained most and the one that lost most, because that is the first question a client asks.
The summary is a draft built from the numbers. It cannot know why a page moved or what you shipped this month. Write that part yourself: a report that says what changed, why, and what you will do next is worth more to a client than any chart.
Why the numbers can differ from the Search Console screen
Three reasons, and none of them is an error in the export.
- Totals against tables. Google's Performance report help page says the chart totals can differ from the table totals because they are counted differently (by property and by page). The report's headline numbers come from the Dates table, so they match the chart.
- Hidden queries. Rare queries are left out of the Queries table to protect searchers' privacy, but their clicks still count in the totals. Top searches will always add up to less than total clicks.
- Row limit. The export from the Search Console screen stops at 1,000 rows per table. For a large site, the long tail of pages and queries is not in the file.
How to make the same report by hand
Open the zip and import Dates.csv, Queries.csv and Pages.csv into a spreadsheet. Sum the Clicks and Impressions columns of Dates for the totals, divide one by the other for CTR, and for average position multiply each day's position by its impressions, add those up and divide by total impressions. Sort the other two tables by clicks and keep the top ten. Paste it all under your letterhead, add a line chart of Dates, write the summary and export a PDF.
For a report you rebuild every month, Looker Studio has a Search Console connector that pulls the same data live into a template. Building and styling the template is work, but once it exists it saves the export step each month.