Track link building for clients with a one-page report
A good client report answers three questions in under a minute: what did you buy, where does it sit, and what happens next. Everything else is decoration.
Every paid placement shows up in your orders with its status, and that list is your source of truth. We do not generate a client-branded report, so you build the template once, in Google Sheets, Looker Studio or your own tool, and fill it each month.
What to log for each placement
| Column | Source | Why it matters |
|---|---|---|
| Live URL and date | Your orders list | Proof of delivery, and the first thing a client asks for |
| Target URL and anchor | Your brief | Shows the link points where the scope said |
| Donor Domain Rating and traffic at purchase | Marketplace row | Freezes the numbers, which move over time |
| Price paid | Basket | Keep it internal unless the contract says otherwise; our margin tables explain why |
| Indexed? (yes, no, unknown) | Search or Search Console checks | Pages that never index count for little |
| Notes | You | Edits, rejected donors, anything odd |
The five sections, in order
Start with a summary line. For example: six placements delivered, all live, two target pages. Keep it to one sentence so the client can forward it. See the scoping template for how those numbers get agreed.
Second comes the delivery table, with one row per link and the columns above. Third is a short note on movement in the client's own data, taken from Search Console impressions and clicks for the target pages, with the dates of any Google update that overlaps the month.
Fourth is what you did not do and why, such as a donor you rejected for off-topic content. Clients value this more than agencies expect. It proves a person was thinking. Last is next month's plan in two lines.
Resist the temptation to add a keyword ranking graph for every term. Rank trackers disagree with each other, and a wobble in week three becomes a phone call.
A word on timing. Search Console data lags by a couple of days, and a core update such as the one Google announced in March 2024 can move numbers for weeks. Put the date of any update in the movement section so a bad month is not blamed on you or on the links.
Skeleton to paste into your template
REPORT: [client] / [month]
1. Summary (one sentence)
[N] placements live, [N] pending, target pages: [urls]
2. Delivery table
# | live URL | date | target | anchor | DR | traffic | indexed
3. Movement (client's own data)
Search Console, target pages: clicks [a] -> [b], impressions [c] -> [d]
Google events in the window: [e.g. none / core update date]
4. Not done, and why
[rejected donors, delays, client approvals outstanding]
5. Next month
Planned placements: [N], target pages: [urls], decision needed: [x]Before you hit send
- Every live URL opens and shows the link to the right target page.
- Anchor text matches the brief, with no typos.
- Indexing status is marked yes, no or unknown, never guessed.
- The numbers in the summary match the table.
- Next month's decision, if any, is the last line and has a deadline.
Reporting questions
- How often should I send a link building report?
- Monthly is the usual rhythm for retainers, sent within a week of delivery. Send a short delivery note the day a batch goes live, because clients like early proof and it prevents mid-month check-in emails.
- Should the report show what I paid for each link?
- Only if your contract says so. Many resellers sell a managed service and show quality metrics, not unit costs. Whatever you choose, be consistent so a client never feels you changed the rules.
- Which metrics should I leave out?
- Skip vanity totals such as a raw backlink count and any made-up trust score. Use delivery, indexing and the client's own Search Console data. Ahrefs and Semrush figures can go in as context, labelled with the tool and date.
- What if a link disappears?
- Note it in the report and check the placement status in your orders. Placements are meant to be permanent, but sites change. Tell the client what you found and what you will do, rather than hoping they miss it.