SEO reporting
SEO dashboard: what to show, how to lay it out and where to build it
How to build an SEO dashboard people use: what to show for each reader, a widget-by-widget layout, Looker Studio vs a spreadsheet vs an app, and a checklist.
On this page
Part of SEO reporting
A useful SEO dashboard shows, on one screen, whether non-branded organic search is growing, which pages and queries caused the change, and whether anything is broken. It is built for one reader at a time, it puts the business result at the top left, and every widget answers a question someone actually asks. Six to ten widgets is enough. A dashboard with forty charts is a data dump that nobody opens after the second week.
Dashboard or report: which one do you need?
The two get confused, and the confusion is why so many dashboards are ignored. A dashboard is for people who check often and want to spot change early. A report is for people who check monthly and want a conclusion written for them. Most teams need both: a dashboard for the person doing the SEO work, and a short written report for the owner or client, as described in SEO reporting.
| SEO dashboard | SEO report | |
|---|---|---|
| Reader | SEO lead, marketing lead, in-house team | Owner, manager, client |
| How often | Daily or weekly, on demand | Monthly or quarterly |
| Answers | What is changing right now? | What happened, why, and what next? |
| Format | Live charts and tables | Written summary with supporting charts |
| Fails when | It tries to explain everything | It is a screenshot of a dashboard |
What an SEO dashboard should show, by reader
Decide who the dashboard is for before you add a single chart. The same data serves different questions, and a dashboard that tries to serve everyone ends up serving no one.
| Reader | Their question | Widgets that answer it | Checks it |
|---|---|---|---|
| Owner or client | Is SEO bringing in business? | Organic conversions, non-branded clicks vs last year, one trend line | Monthly |
| Marketing lead | Where is growth coming from? | Branded vs non-branded split, top landing pages, conversions by page | Weekly |
| SEO specialist | What changed and what should I fix? | Top movers, ranking ladder, CTR against position, indexing and Core Web Vitals | Daily or weekly |
| Content team | Which pages need work? | Pages losing clicks, queries ranking 4-20, new pages gaining impressions | Weekly |
If you can only build one, build it for the person who will act on it: usually the SEO specialist. Owners and clients are better served by a written monthly summary than by a dashboard login they forget.
A widget-by-widget layout
Read a dashboard the way people read a page: top to bottom, left to right. Put the result first, the explanation second and the diagnostics last. This layout works for most sites that get their organic data from Google Search Console and their conversions from an analytics tool.
| Row | Widget | What it shows | Source |
|---|---|---|---|
| 1 | Scorecards | Non-branded clicks, organic conversions, organic conversion rate, each with change vs the previous period and vs last year | Search Console, analytics |
| 1 | Date and comparison control | One range for the whole dashboard, with the comparison period stated | Dashboard setting |
| 2 | Clicks trend, branded vs non-branded | Two lines over 16 months so seasonality is visible | Search Console with a brand regex |
| 2 | Release and update annotations | Dates of site releases and confirmed Google updates on the trend | Your change log |
| 3 | Ranking ladder | Number of queries in the top 3, top 10 and top 20 over time | Search Console or rank tracker |
| 3 | CTR vs position | Queries whose CTR is well below what their position usually earns | Search Console |
| 4 | Top gaining and losing pages | Clicks change by page vs the previous period, with impressions and position | Search Console |
| 4 | Conversions by landing page | Which organic pages produce leads, sign-ups or sales | Analytics |
| 5 | Health | Indexed key pages and Core Web Vitals status, shown only when they change | Search Console |
SEO dashboard template
Copy this wireframe into your tool of choice. Each line is one widget, with the question it answers next to it, so anyone editing the dashboard later knows why it is there.
# SEO dashboard: [Site] · Range: [last 28 days] vs [previous 28 days] and [same period last year]
Row 1 · Result
[Non-branded clicks] [Organic conversions] [Organic conversion rate] -> Is SEO growing the business?
Row 2 · Trend
[Clicks over 16 months: branded line + non-branded line, with release annotations] -> Is growth real or seasonal?
Row 3 · Visibility
[Queries in top 3 / top 10 / top 20 over time] [Queries with CTR far below position] -> Are rankings and snippets improving?
Row 4 · Causes
[Top 10 gaining pages] [Top 10 losing pages] [Conversions by organic landing page] -> What moved, and does it matter?
Row 5 · Health
[Indexed key pages %] [URLs passing Core Web Vitals %] -> Is anything broken?Building a Search Console dashboard
Most of an SEO dashboard comes from Search Console, so it helps to know the data's limits before you design around it.
- History is 16 months. If you want longer year-over-year comparisons, store the data yourself each month.
- The last two or three days are incomplete. End your date range a few days ago, or the latest values will always look like a drop.
- Some queries are hidden. Rare queries are anonymized, so query-level totals are lower than site totals. Compare like with like.
- The web interface exports 1,000 rows. Dashboards built on the API or a connector can read far more, which matters for large sites.
- Average position is an average. A ranking ladder (counts of queries in the top 3, 10 and 20) is easier to read and harder to misinterpret.
In Looker Studio, the brand split takes one calculated field on the Query dimension. Looker Studio's regex functions match the whole string, so wrap the pattern in .* and use (?i) to ignore case:
CASE
WHEN REGEXP_MATCH(Query, "(?i).*(acme|acme shop|acmeshop).*") THEN "Branded"
ELSE "Non-branded"
ENDLooker Studio vs a spreadsheet vs an app
| Looker Studio | Spreadsheet | SEO app | |
|---|---|---|---|
| Cost | Free | Free | Monthly subscription |
| Setup | A few hours per template | An hour, then manual updates | Minutes: connect Search Console |
| Upkeep | Breaks when connectors or fields change | Re-export and paste every period | Maintained by the vendor |
| Brand split | Calculated field you maintain | Formula or filter you maintain | Usually a setting |
| Many sites | One copy per site, or a site filter | Hard beyond a few sites | Switch between sites |
| Best for | Custom layouts, blending several sources | One site, occasional checks | Teams that want answers, not chart building |
Looker Studio is the right choice when you need a layout no tool offers, or you blend SEO with paid and CRM data. A spreadsheet is fine for one site checked monthly. An app pays for itself once the hours of upkeep across several sites cost more than the subscription. For a full comparison of options, see SEO reporting tools.
Common SEO dashboard mistakes
- No brand split. Total organic clicks rise after a TV campaign and the SEO team takes credit, or fall and takes the blame.
- Total impressions as a headline. Impressions grow when you rank on page five for more queries. Pair them with clicks and the ranking ladder.
- Third-party authority scores as a KPI. They are tool estimates, not Google metrics. See SEO KPIs for what to track instead.
- Every chart on one screen. If a widget has not changed a decision in three months, remove it.
- No comparison period. A number without last period and last year beside it says nothing.
- No annotations. Without release and update dates, every movement turns into a debate.
- Including incomplete days. The most recent days always look like a drop until the data fills in.
Build checklist
- 1
Name the reader and their three questions
Write them at the top of the dashboard. Every widget must answer one of them.
- 2
Define brand terms once
Agree the brand regex, including misspellings and product names, and use it everywhere.
- 3
Connect Search Console and analytics
Use the property that covers the whole site (a domain property if you have one) and the organic search segment in analytics.
- 4
Build row 1 first
Non-branded clicks and organic conversions with both comparison periods. If that row is wrong, nothing else matters.
- 5
Add trend, visibility and causes
The branded vs non-branded trend, the ranking ladder, CTR against position and top movers.
- 6
Add annotations
Log releases, migrations and confirmed Google updates so changes have context.
- 7
Test with the reader
Ask them to answer their three questions using only the dashboard. Remove whatever they did not use.
- 8
Review quarterly
Drop widgets nobody looks at and check that the brand regex still covers new product names.
Skipping the build with AnotherSEOGuru App
AnotherSEOGuru App connects to Search Console and shows most of this layout without building anything: non-brand filters, the ranking ladder, a search health score built from click momentum, CTR against expected positions and top-10 coverage, top movers, and annotations for your releases and confirmed Google updates. Search Console analytics cost no credits on any plan. When the dashboard needs to become a monthly report, Reports → Client report builds a printable one for any site and date range, white-label on the Agency plan; see white-label SEO reports. The live demo shows it on sample data, and plans are on the pricing page.
What should an SEO dashboard include?
Is there a free SEO dashboard template?
Can I build an SEO dashboard from Search Console alone?
How many widgets should an SEO dashboard have?
What is the difference between an SEO dashboard and an SEO report?
Do this on your own data
Connect Search Console once (read-only) and AnotherSEOGuru App runs this analysis for every site you manage, every week. Search Console features cost no credits on any plan.
Was this page helpful?