Monthly SEO Report Template

A monthly SEO report has one job: help the person paying for SEO understand what changed, why it changed and what happens next. Too many reports bury that under pages of screenshots.

See what’s inside

This is the structure I use. It starts with a three-bullet summary, backs it up with a consistent KPI table from Google Search Console, GA4 and Ahrefs, and ends with a clear plan for next month. It also has a section for AI search visibility, which more business owners now ask about.

It suits freelancers and agencies reporting to clients, and in-house marketers reporting to a manager or business owner.

What’s included

  • Three-bullet summary: what happened, why it happened and what comes next.
  • KPI table: clicks, impressions, CTR, position, sessions, key events, revenue, referring domains, DR and ranking keywords, compared with last month and a baseline.
  • How to pull each number: where to find every metric in Search Console, GA4 and Ahrefs.
  • Top pages and keyword movements: the pages driving results and the biggest winners and losers.
  • Work, content and links: what was done, what was published and which links were earned.
  • Technical health: indexing, Core Web Vitals, broken links, sitemaps and manual actions.
  • AI search visibility: a prompt log for ChatGPT, Perplexity and Google AI Overviews, plus AI referral traffic.
  • Risks and next month's plan: issues to watch and three to five prioritised tasks with owners.

How to use it

  1. Make a copy for each month and fill in the report details, including the baseline period.
  2. Pull the KPI numbers using the same calendar-month date ranges every time, following the how-to table.
  3. Complete the detail sections: top pages, keyword movements, work completed, technical health, content, links and AI visibility.
  4. Note any issues or risks, and set three to five priorities for next month.
  5. Write the three-bullet summary last, once you know what the numbers are saying.
  6. Send the report with a short note and offer a quick call to talk it through.

Google Docs

Monthly SEO Report Template

Join my newsletter and make your own editable copy in seconds.

Tips from my client work

  • Compare like with like. If the business is seasonal, add a year-on-year column so a quiet month isn't mistaken for a decline.
  • Don't read average position on its own. It often drops when a site starts appearing for new keywords, so check it alongside impressions and clicks.
  • Explain every big movement. A number without a reason invites the reader to guess, and people usually guess the worst.
  • Use the same 5 to 10 AI search prompts every month, worded exactly the same, so changes reflect your visibility rather than your phrasing.
  • Keep a log of tracking changes, migrations and consent banner updates. They explain sudden jumps in the data better than anything else.

FAQs

What should be in a monthly SEO report?

A short summary, the core KPIs against last month and a baseline, the pages and keywords driving change, the work completed and a plan for next month. Anything that doesn't help someone make a decision can usually go.

Why don't Search Console clicks match GA4 sessions?

They measure different things. Google counts a click when someone clicks your result, while GA4 counts a session only when its tag loads and the visitor's consent and browser settings allow tracking. Expect a gap, and watch the trend in each one separately.

How do I track AI search visibility?

Run a fixed set of prompts in ChatGPT, Perplexity and Google each month and record whether your brand is mentioned or cited. Check GA4 for referral sessions from AI tools too, and if you have access, use a tool such as Ahrefs Brand Radar to track mentions at scale.

Ready when you are

Let’s find your next stage of growth.

Hire me through Upwork, or tell me about your business and goals and I’ll suggest where to start.

You’ll work with me directly100% Job Success · 5.0★ rating on Upwork

Get the template

Enter your email and you’ll get your own editable copy of the template straight away. You’ll also join my newsletter with practical SEO and content tips. Unsubscribe any time.

Before you publish

Everything here is set in config.js. Items still open: