SEO Reporting, ROI and Forecasting
Automated SEO reports: what to automate and what not
Automate the collection, the tables and the delivery of an SEO report: pulling Search Console and analytics data, filling the same views each month and sending them on a schedule. Keep the judgement for a person: why a figure moved, which revenue label it carries, whether the enquiries were any good and what to do next.
By QueryRev ResearchPublished Updated8 min read
Key takeaways
- Automate the data pulls, the standard tables and charts, the delivery and the checks that a report has not broken.
- Keep for a person why each figure moved, the label every revenue figure carries, the quality of the enquiries and the next actions.
- Know the limits of each pipe: Search Console row limits and hidden rare queries, analytics thresholds, and data that refreshes on its own schedule.
- Store your own monthly history, because the tools keep less of it than a report needs.
- Treat a machine-written summary as a draft to check against the tables, never as the finding.
What a machine does well, and what it cannot know
An SEO report is two kinds of work stacked together. One is assembling numbers: pulling the same data from the same places, in the same shape, every month. Machines do that better than people, because they do not tire, skip a step or round a figure differently in March. The other is judging what the numbers mean for one business: why something moved, whether it matters, and what to do. That needs knowledge no data source holds.
Pulling Search Console and analytics data
- Automate?
- Yes
- Why
- Same query, same dates, every month
The metric table and the standard charts
- Automate?
- Yes
- Why
- Same rows and definitions each time
Delivery on a schedule
- Automate?
- Yes
- Why
- A report that arrives on the same day is read
Checks that the data is complete
- Automate?
- Yes
- Why
- A broken tag or a missing month is caught before the client sees it
The headline and “what the numbers say”
- Automate?
- Draft at most
- Why
- The cause of a change needs knowledge of the business and of what was done
The label on each revenue figure
- Automate?
- No
- Why
- Whether a figure is known, influenced, modeled or incremental is a decision about evidence
Whether enquiries were any good
- Automate?
- No
- Why
- Only the business knows which leads were real
Next month’s plan
- Automate?
- No
- Why
- Priorities depend on budget, people and what the business needs
| Part of the report | Automate? | Why |
|---|---|---|
| Pulling Search Console and analytics data | Yes | Same query, same dates, every month |
| The metric table and the standard charts | Yes | Same rows and definitions each time |
| Delivery on a schedule | Yes | A report that arrives on the same day is read |
| Checks that the data is complete | Yes | A broken tag or a missing month is caught before the client sees it |
| The headline and “what the numbers say” | Draft at most | The cause of a change needs knowledge of the business and of what was done |
| The label on each revenue figure | No | Whether a figure is known, influenced, modeled or incremental is a decision about evidence |
| Whether enquiries were any good | No | Only the business knows which leads were real |
| Next month’s plan | No | Priorities depend on budget, people and what the business needs |
Google’s own advice is to check a tool’s recommendations before acting on them, as the guide to the SEO audit report sets out. A tool can count; it cannot know why a buyer chose a competitor this month, or which figures the business acts on.
Know the limits of each data source
An automated report is only as good as the data it pulls, and each source has limits that a dashboard does not show. Learn them once and write them into the report’s definitions.
Search Console, in the browser
- The limit
- Exports at most 1,000 rows
- What to do
- Use the API or the bulk export for anything larger
Search Console API
- The limit
- Up to 50,000 rows a day for each site and search type, 25,000 in one request
- What to do
- Page through the results; split by date or search type
Search Console, any route
- The limit
- Rare queries are hidden to protect privacy
- What to do
- Read page totals from the chart, not from summed rows
Bulk export to BigQuery
- The limit
- Everything Search Console has, except the hidden queries
- What to do
- Use it for a site with many pages or a long history
Analytics reports
- The limit
- Rows withheld below a threshold of users
- What to do
- Widen the date range before concluding there is no data
Analytics explorations
- The limit
- Event data kept for 2 or 14 months in a standard property
- What to do
- Keep the monthly figures yourself
| Source | The limit | What to do |
|---|---|---|
| Search Console, in the browser | Exports at most 1,000 rows | Use the API or the bulk export for anything larger |
| Search Console API | Up to 50,000 rows a day for each site and search type, 25,000 in one request | Page through the results; split by date or search type |
| Search Console, any route | Rare queries are hidden to protect privacy | Read page totals from the chart, not from summed rows |
| Bulk export to BigQuery | Everything Search Console has, except the hidden queries | Use it for a site with many pages or a long history |
| Analytics reports | Rows withheld below a threshold of users | Widen the date range before concluding there is no data |
| Analytics explorations | Event data kept for 2 or 14 months in a standard property | Keep the monthly figures yourself |
Google sets out the Search Console limits in detail. The browser exports at most 1,000 rows; the API and the Data Studio connector reach up to 50,000 rows a day per site per search type, with a default of 1,000 rows per request that can be raised to 25,000[1]. Queries issued by fewer than a few dozen people over two to three months are left out of the tables but counted in the chart totals, unless the report filters by query[1]. The bulk export to BigQuery delivers all the performance data Search Console has for the property, except those anonymised queries[2].
Timing matters as much as size. The API returns only finalised data unless it is asked for fresh data as well[3], so a pull scheduled for the first of the month should ask for finalised data, or wait. In Analytics, rows can be withheld when too few users stand behind them, especially for search queries and demographics, and widening the date range can bring them back[4]. Explorations and funnel reports keep event data for 2 or 14 months in a standard property, while the standard aggregated reports are unaffected by that setting[5]. A report that needs three years of history must store it.
Scheduled dashboards in Data Studio
Data Studio, which Google called Looker Studio until recently, is the free way most teams turn Search Console and Analytics into a report that refreshes itself. Three of its behaviours decide whether an automated report can be trusted.
- Its Search Console connector reads one of two tables, site impressions or URL impressions, and one data source can use only one of them; to show both side by side, add two data sources to the report[6]. The two tables count differently, so a chart and a table built on different ones will not agree.
- Queries that Google hides for privacy may appear as a single row with a blank value[6]. Filter it out, or label it, so that nobody mistakes it for a query.
- Data from Google’s marketing and measurement products, including Search Console and Analytics, refreshes every 12 hours by default, and the Search Console rate cannot be changed[7]. A report opened the morning after a fix may not show it yet.
Scheduled delivery sends the report by email as a PDF, with a preview of its first page and a link to the full report[8]. Without the paid tier, each report can have one schedule, sent at most once a day; with it, up to 200 schedules and hourly sending[8]. The schedule follows the time zone of the sender’s computer, which cannot be changed inside Data Studio, and a schedule that is deleted cannot be restored[8].
Automate the checks that catch a broken report
The most useful automation is the kind nobody sees: tests that run before a report goes out and stop it when the data is wrong. A wrong report sent on time does more harm than a right one sent a day late.
- Check that every source returned data for every day of the month, and that no day is preliminary.
- Compare the month’s totals with the tool’s own interface once, by hand, when the report is built, and again whenever the pipeline changes.
- Flag a metric that falls to zero or jumps several times over in a month. Most are tracking faults, not search events.
- Watch the key events: if a form’s submissions drop to nothing on a day the site changed, the tag broke, not the demand.
- Hold the definitions still: the same keyword set, the same pages in each group, the same attribution model. Log any change, with its date, in the report.
What to keep for a person
Some parts of a report are decisions, and a decision needs someone accountable for it. Keep these with a person who knows the business, and let the machine prepare the evidence for them.
- The cause of each change. A tool can show that clicks fell on a group of pages; it cannot know that the client paused a product line, that a competitor ran a sale or that the page was rewritten on the tenth.
- The label on each revenue figure. Whether a figure is known, influenced, modeled or incremental depends on the evidence behind it, as set out in the guide to SEO reporting in revenue, and a wrong label turns an estimate into a claim.
- The quality of the enquiries. Analytics counts form submissions; only the business knows which were customers, which were spam and which asked for something it does not sell.
- The next actions, and their order. Priorities depend on budget, people, dependencies and what the business needs this quarter.
- What is said about a decline. A fall explained badly loses more trust than the fall itself.
Machine-written summaries: a draft, not a finding
Language models can turn a table into fluent paragraphs in seconds, and the paragraphs will sound sure of themselves. That is the risk. A model reading a table sees that clicks fell; it does not know why, so it supplies the most common reason, and the most common reason is often wrong for this site and this month.
Use a draft, if at all, for the parts that describe the table: which rows rose, which fell, by how much. Then check every figure in the draft against the table it came from, delete every cause the draft supplied, and write the causes yourself from what you know was done and what happened in the market. Anything the draft calculated, such as a change or a share, is recalculated from the data, not taken from the prose.
A setup that runs itself and stays honest
- Write the definitions first: the key events, the attribution model, the page groups, the keyword set and the brand terms. The automation encodes them; it does not choose them.
- Pull Search Console through the API or the bulk export into storage you control, monthly at least, so that history outlives the tools’ own limits.
- Pull Analytics with the same dates and the same time zone note, and join the two by landing page.
- Build one dashboard with fixed views for the report, and keep exploration in a separate copy.
- Run the checks before every send, and stop the send when one fails.
- Schedule delivery for the first week of the month, after the person who owns the account has written the headline, the explanations and the plan.
What goes into the report itself, section by section, is set out in Monthly SEO report: what to include.
Sources
Primary sources only, each read on the day given.
- 1.A deep dive into Search Console performance data filtering and limits. Google Search Central Blog. Read .
- 2.About bulk data export of Search Console data to BigQuery. Search Console Help, Google. Read .
- 3.Search Analytics: query. Search Console API, Google for Developers. Read .
- 4.About data thresholds. Analytics Help, Google. Read .
- 5.Data retention. Analytics Help, Google. Read .
- 6.Connect to Search Console. Data Studio documentation, Google Cloud. Read .
- 7.Manage data freshness. Data Studio documentation, Google Cloud. Read .
- 8.Schedule automatic report delivery. Data Studio documentation, Google Cloud. Read .
Cite this guide
A suggested citation. Its link goes to this page, whose address does not change.
QueryRev Research. “Automated SEO reports: what to automate and what not.” QueryRev AI, 18 Oct 2026. https://queryrev.com/guides/automated-seo-reports