A monthly report you can read before you sign.
This is the report format. The business is fictional and the numbers are blanked out on purpose, because made-up numbers would be worse than none.
What's real is the structure: what we did, what changed and why, what it cost, and what we need from you next month.
Free, limited review · 5 business days · no card, no contract · one follow-up · Full audit terms
Ask for a quoteSample Co. is invented. Every figure is a placeholder ($X, N, —) and every chart is a schematic.
Monthly report
Illustrative sample. Not a real client.Sample Co.
a local services business
- Website
- example.com
- Period
- September 2026
- Channels
- SEO · Local SEO · Google Ads · Meta
- Prepared by
- Account lead, Omnexna Agency
- Report date
- The 5th business day of each month (agreed in week 0)
Summary in words
Illustrative sample. Not a real client.What we did
Shipped the second batch of technical fixes, published two articles, rebuilt the emergency-call campaign in Google Ads and swapped two tired Meta ads.
What changed
Search terms showed people searching for after-hours work, so that traffic now has its own campaign and its own budget. Two service pages were merged because they were competing with each other.
What's next
Write the water-heater page, test a second landing page for the after-hours campaign, film two short videos.
What we need from you
Approval on two article drafts by the 15th, and ten new job photos for the Business Profile.
What we did
Illustrative sample. Not a real client.SEO
- Fixed redirect chains on the old service URLs
- Merged two overlapping pages and redirected the weaker one
- Published two approved articles
- Rewrote title tags on the five priority pages
Local SEO
- Posted weekly updates to the Business Profile
- Answered new Q&A from real customer questions
- Sent review requests after completed jobs
- Corrected opening hours on two directory listings
Google Ads
- Split after-hours searches into a separate campaign
- Added negative keywords from the search term review
- Started an ad copy test on the main service campaign
- Checked call tracking after the phone menu changed
Meta
- Paused two ads showing signs of fatigue
- Launched two new static ads
- Checked pixel and Conversions API events
What changed and why
Illustrative sample. Not a real client.Note 1
- Change
- After-hours searches moved into their own Google Ads campaign.
- Why
- They were eating the daytime budget by mid-afternoon.
- What we're watching
- whether daytime ads stay live until close.
Note 2
- Change
- Two near-identical "drain cleaning" pages became one.
- Why
- Google kept switching between them for the same searches.
- What we're watching
- which URL Search Console shows for those searches next month.
Note 3
- Change
- Paused the two longest-running Meta ads.
- Why
- Frequency was climbing and clicks were falling off.
- What we're watching
- how the replacements do over their first two weeks.
SEO
Illustrative sample. Not a real client.Schematic. Values not real.
| Item | This month | Last month |
|---|---|---|
| Pages indexed | N | N |
| Technical issues open | N | N |
| Technical issues fixed | N | N |
| Articles published | N | N |
Pages we worked on
| Page | What we did | Status |
|---|---|---|
| example.com/drain-cleaning/ | Merged with duplicate, rewrote title | Live |
| example.com/blog/when-to-replace-a-water-heater/ | New article | Live |
| example.com/blog/what-a-sewer-camera-inspection-shows/ | New article | Live |
| example.com/water-heaters/ | Brief written | Draft next month |
Local SEO
Illustrative sample. Not a real client.- Calls
- Directions
- Website clicks
Schematic. Values not real.
| Item | This month |
|---|---|
| Calls from the profile | N |
| Direction requests | N |
| Website clicks | N |
| Review requests sent | N |
| Posts published | N |
Every customer was asked the same way. No incentives, no gating.
Google Ads
Illustrative sample. Not a real client.- Daily spend
- Daily budget
Schematic. Values not real.
| Campaign | Spend | Conversions | Cost per conversion |
|---|---|---|---|
| Main services | $X | N | $X |
| After-hours | $X | N | $X |
| Brand | $X | N | $X |
New negative keywords (sample)
- jobs
- salary
- DIY
- training course
- free
Paid social
Illustrative sample. Not a real client.- Frequency
Schematic. Values not real.
| Ad | Status | Spend | Results |
|---|---|---|---|
| Static: "Booked same day" | Paused, fatigue | $X | N |
| Static: "Before and after" | Paused, fatigue | $X | N |
| Static: "Clear pricing" | New | $X | N |
| Static: "Meet the crew" | New | $X | N |
Booked same dayBook Illustrative sample. Not a real client.Before and afterSee Illustrative sample. Not a real client.Clear pricingPrice Illustrative sample. Not a real client.Meet the crewMeet Illustrative sample. Not a real client.
Money
Illustrative sample. Not a real client.| Line | Amount | Billed by |
|---|---|---|
| Omnexna management fee | $X | Omnexna, by invoice |
| Google Ads spend | $X | Google, to your card |
| Meta ad spend | $X | Meta, to your card |
Spend billed by the platform to your card. We don't add these up into one number on purpose: only the first line is paid to us.
Tracking health
Illustrative sample. Not a real client.| Check | Status | Note |
|---|---|---|
| GA4 receiving data | Pass | — |
| Conversion events | Warn | Form event fires twice if the thank-you page is reloaded. Fix booked. |
| Call tracking | Pass | Re-tested after the phone menu change. |
| Meta pixel and Conversions API | Fail | Server events stopped after the site update on the 18th. Developer contacted. |
Next month
Illustrative sample. Not a real client.| Task | Owner | When |
|---|---|---|
| Fix the duplicate form event | Us | Week 1 |
| Restore Conversions API events | You (developer), us to verify | Week 1 |
| Write the water-heater page | Us | Week 2 |
| Test a second after-hours landing page | Us | Weeks 2 to 4 |
| Film two short videos | You, using our scripts | Week 3 |
Needed from you
Illustrative sample. Not a real client.- Approve or edit the two article drafts by the 15th.
- Send ten recent job photos for the Business Profile.
- Ask your developer to look at the Conversions API issue.
- Tell us if the holiday hours are changing.
Access and ownership
Illustrative sample. Not a real client.| Account | Owner | Our access |
|---|---|---|
| Google Ads | Sample Co. | Standard |
| Meta Business Manager | Sample Co. | Admin |
| GA4 | Sample Co. | Editor |
| Search Console | Sample Co. | Full user |
| Business Profile | Sample Co. | Manager |
Everything here belongs to Sample Co. If they leave, we remove our access and they keep the lot. Role names vary by platform: we ask for admin or analyst access, read-only for the audit, and never passwords.
Want a report like this for your own account?
Start with the audit. It shows what we'd look at first, using your real site.
There's no PDF version yet. Ask for one with your audit and we'll send the format.
Free audit: a limited review of technical SEO basics, plus ad account and tracking health. Not a full strategy. Delivered within 5 business days. No card, no contract. We may email or call you once about the results; you can say no thanks.
Ask for a quote