Key takeaways
- Tag the links you control with one consistent source, medium and campaign pattern, and keep personal data out of the URL.
- A click is evidence of interest; only the program can confirm a commission, so give each its own column.
- Build the smallest report that answers three decisions: what to repair, which links fail, which recommendations get approved.
- Review one cohort over a fixed window, change one thing, and write down the evidence and the next review date.
- Start free — worksheet, Search Console, existing analytics and the program's own dashboard — and upgrade only when manual reconciliation breaks.
Affiliate link tracking, and what it can honestly tell you
Affiliate link tracking tells you where a visit came from and, separately, what a program later confirms. It cannot prove a person bought something unless that program reports it. You match two records — your tagged link data and the program's commission status — and read them side by side.
If you can see commission totals in a dashboard but not which post or email produced them, you are not short of a tool. You are missing a join between two records that were never built to talk to each other: your site's activity data and each program's commission ledger. That join is the whole skill, and it fits on one page.
Who this lesson is for. Beginners running a small affiliate site or newsletter in the evenings, with no developer and no budget for one more subscription. Every step below works with a spreadsheet, a free search-data account and the affiliate dashboards you already log into.
Not launched yet? If you are still choosing your first hosting plan or funnel builder, start there before you track a link. Use our free tool-selection path for beginners to compare a few essentials (hosting, funnel page, email) without paying for extras. Then come back when your first link is live.
What you will have finished. By the end of the four tasks you will have:
- one consistent naming pattern for the links you control;
- a worksheet that keeps clicks and program-confirmed commissions in separate columns;
- a one-page report you can actually keep up to date;
- a dated review that names one improvement and the evidence behind it.
Plain-English glossary — read this once before you start:
- UTM — small text tags you add to a link to your own page so your analytics can report source, medium, and campaign.
- Sub-ID — a code a program lets you attach to its affiliate link to identify which page or email sent the visitor; the program reports it back.
- Attribution window — the number of days after a click during which a program will still credit a commission to that link.
- Pending vs approved vs reversed vs paid — pending means the program is still reviewing the sale; approved means the program has confirmed the commission; reversed means the program later took it back; paid means the money has actually been paid out to you.
Nothing here assumes you have bought a tracking tool, and no paid tool is recommended along the way. The free route is a complete route; anything paid is a later research decision with a trigger attached.
Record where useful visits come from
Loose naming is what breaks a report before it starts: Google's guidance notes that inconsistent campaign values split a single marketing effort across multiple rows and skew reporting accuracy [1]. Consistent tags are what let you say "this lesson, from this email, brought this visit" instead of "traffic moved somewhere".
- Name the campaign once, in writing. Put it in a note before you touch a link. Use lowercase and a consistent separator, because parameter values are case-sensitive and
spring-saleis treated as a different campaign fromSpring-Sale[1]. - Tag links to your own pages with three values. Google's guidance is to set
utm_source,utm_mediumandutm_campaigntogether, with one unique source per platform and one unique medium per channel [1]. A walkthrough of the same values in practice sits in UTM tags and sub-IDs for affiliate links. - Use
utm_contentwhen two links share one email or page, so you can tell which version was clicked [1]. - It's good practice to keep personal data out of the URL. No names, no email addresses, no order numbers. Use opaque labels such as
lesson_introordownload_step_2. - Tag what you control, not what the program controls. Your parameters go on the link to your own lesson, checklist page or signup; the program's own tracked link format is separate, and Amazon, for example, requires that its tagged link formats be used properly [5].
- Write every value into a running list so the next email reuses the same source and medium instead of inventing new ones.
- Read two sources, not one. Search Console reports how Google crawls, indexes and serves your site, and its Search performance report shows impressions and clicks by query, page and country [3]. Use it for search. Use a separate website analytics source for what people do after they land — a session is associated with only one campaign or traffic source [2], so neither source tells the whole story alone.
- Send a test visit. Click your own tagged link, then confirm the campaign appears in the report under the values you chose [1].
Google suggests checking Search Console roughly once a month, or when you change site content, rather than daily [3]. Put that check on the same calendar as your report review, not on a separate one.
Illustrative example: a three-page site publishes a printable checklist. Its lesson links read https://YOUR-SITE.example/learn/affiliate-tracking?utm_source=newsletter&utm_medium=email&utm_campaign=checklist_launch&utm_content=lesson_intro. The test click appears under source newsletter, medium email, campaign checklist_launch — and nothing in that URL identifies a person.
Done when: a test visit is recorded under the correct campaign without personal data in its URL.
Keep clicks and commissions in separate columns
A click is evidence of interest. It is not proof of a sale and it is certainly not an approved commission. When those two things share a column, you start planning around money a program can still reverse.
- Build one worksheet with one row per link. Columns: date added, page or email, link label, sub-ID, clicks, pending, approved, reversed, paid, last checked.
- Take click counts from the program's own reporting where it offers them. Some affiliate dashboards show clicks, referrals and earnings alongside each other [4]; the number you want is the count for that specific link, not the account total.
- Use a sub-ID or tracking parameter only where the program supports it and check its help pages rather than assuming. Where it does, use an opaque code —
post17,email_04— never a reader's email address. - Give each status its own column. Pending, approved, reversed and paid are four different things; pending and approved commissions are not the same money.
- Leave the per-reader question blank when the program does not report it. If the dashboard only shows totals, write unknown in that cell rather than marking anyone as a buyer.
- Reconcile on a fixed day each month and record the date you checked in the row, because program figures change after the fact.
- Check each program's terms before comparing months, including whether attribution windows differ — here is how attribution windows actually work.
| Page or asset | Link label | Sub-ID | Clicks | Pending | Approved | Reversed | Paid | Checked |
|---|---|---|---|---|---|---|---|---|
| /learn/affiliate-tracking | lesson CTA | lesson_cta | 40 | $12.00 | $24.00 | $36.00 | $0.00 | 1 May |
| checklist email 4 | step 2 link | email_04 | 17 | $0.00 | $12.00 | $0.00 | $12.00 | 1 May |
Illustrative example: suppose one lesson link receives 40 clicks and the program later shows two approved commissions at $12.00 each, one pending at $12.00 and three reversed at $12.00 each. Approved is 2 × $12.00 = $24.00. Pending is $12.00. Reversed is 3 × $12.00 = $36.00, which is not paid and may never be. Paid today is $0.00 until a payout clears. The report says 40 clicks and $24.00 approved — two different facts, two different columns, no arithmetic mixed up.
What it looks like in one view (text mock):
- Tagged link on your own page:
https://YOUR-SITE.example/learn/affiliate-tracking?utm_source=newsletter&utm_medium=email&utm_campaign=checklist_launch&utm_content=lesson_cta - Program dashboard row:
sub_id: lesson_cta | clicks: 40 | pending: $12.00 | approved: $24.00 | reversed: $36.00 | paid: $0.00 - Your worksheet row for that link:
lesson CTA | lesson_cta | 40 | $12.00 | $24.00 | $36.00 | $0.00 | 1 May
The dashboard row is the source for the program-confirmed columns; your site analytics provides the click count. You match them by the same sub-ID.
Done when: one sample report separates site activity from program-confirmed commission status.
Choose the simplest report you can maintain
A report earns its keep by answering a decision you are about to make. If a chart has never changed what you did next, it is decoration — and decoration has a maintenance cost you will quietly stop paying in week three.
- Write the three questions first. Which lesson needs repair, which links are failing, and which recommendations produce approved commissions.
- Check the free answers before buying anything. Search Console for indexing and search performance [3]; your website analytics for which pages and lessons get used; each program's dashboard for commission status [4].
- Write down the limits of each source. Google notes that some campaign fields, such as
utm_creative_formatandutm_marketing_tactic, are not currently reported in Analytics properties [1], and that a later direct visit does not overwrite the original referrer, so a campaign that started a session is kept, while sessions read as direct when no referrer is recorded at session start [2]. - Check consent and privacy fit. If your site asks visitors for consent, review how your analytics configuration lines up with those choices; measuring events you do not intend to collect is not an upgrade.
- Build a one-page report with four columns: question, number, source, known limit. Anything that does not fit those four columns waits until next month.
- Set the cadence. Monthly is enough for a small site; Google's own suggestion for Search Console is a check around once a month or after content changes [3].
- Add nothing new until the current page has survived two reviews.
| Question | Free source | Known limit |
|---|---|---|
| Does Google index and show the lesson? | Search Console index coverage and Search performance [3] | Search data only — no commission information |
| Which page or email do people open and use? | Website analytics campaign reports [1] | A session is tied to one campaign or source [2]; consent settings shape what is collected |
| Was a commission approved? | The program's affiliate dashboard [4] | Reporting detail varies by program; confirm what the dashboard shows |
Illustrative example: a site keeps three free reports and one page of notes. The page reads: "Readers click the tool link about 40 times a month; three of last month's clicks became approved commissions; we cannot see which reader did what." That is a short report with an honest limit, and it still tells you where to look next.
Done when: a short report answers a real business question with known data limits.
Review one cohort and choose one improvement
Comparing this month's three visitors with last month's three hundred tells you nothing. A cohort — everyone who downloaded or subscribed in the same period — followed over a fixed window tells you whether the lesson, the link or the offer is the weak point.
- Fix the cohort. For example: everyone who downloaded the checklist in April.
- Fix the observation window before you look. Thirty days is easy to remember; write the end date on the report.
- Compare four things only: return visits, lesson actions, affiliate clicks and confirmed results.
- Check broken links and missing rows first. A missing sub-ID looks exactly like a link that stopped converting.
- Make one change — a rewritten opening, a moved link, a better-fitting recommendation — and write the reason, the evidence and the next review date beside it.
- Keep unknowns visible in the report so it can never imply a certainty the data does not support.
Illustrative example: a 30-day review of 120 checklist downloads shows 44 return visits, 40 clicks on the tool link and two approved commissions at $12.00 = $24.00 approved. That leaves 118 downloads whose purchase outcome the program does not report (80 never clicked, 38 clicked but had no confirmed commission). The single change: move the tool link above the third subheading on the lesson, because 34 of the 40 clicks came from readers who reached that heading. Next review in 30 days, and the reason is written next to the change.
Done when: a dated review names one change, its evidence and the next review point.
Tool decision: start free, upgrade on a trigger
The free route, which is the whole route for most small sites: a spreadsheet worksheet, Search Console for search performance [3], the analytics you already run for on-site behaviour, and each program's dashboard for commission status [4]. Apply your site's consent settings before you add anything else. Finish the four tasks above with those four things and you have not cut a corner — you have built the smallest system that works.
The upgrade trigger: consider a paid tracking tool when the volume or the number of programs makes manual reconciliation unreliable — for example, when you cannot match a month's commission rows to a link without guessing, or when one worksheet can no longer hold every program. Not before. More charts do not repair missing or inaccurate data.
Candidate categories to research, in this order:
- Search data: Search Console, free, and the first stop for organic performance [3].
- Website behaviour: an appropriately configured analytics tool that records the events you need under your consent choices.
- Program reporting: an affiliate program's own dashboard; for example, systeme.io says affiliates track clicks, referrals, and earnings in the affiliate dashboard [4].
- Paid tracking software: a later research category — worth reading about, not worth paying for while a worksheet is still accurate.
Judge any candidate against the events you actually need to measure, not against its feature list. If it cannot report a click and an approved commission in a form you can reconcile, the extra dashboard is a cost with no decision attached.
Link markup is a separate job from measurement, and it is not optional: Google asks that paid or sponsored links be marked with rel="sponsored" so the relationship is clear [6]. The practical version — including when to use nofollow — is in rel=sponsored, nofollow and link cloaking.
On trust and methodology. Last reviewed: May 2025. For this lesson, the free workflow described above relies on Search Console [3], a website analytics account, and affiliate program dashboards [4]. We did not test any paid tracking software, did not buy through every program, and did not access per-reader purchase data where the program does not report it. Recommendations in this article are based on that documented setup plus the official guidance cited above. We do not claim to have used every tool, and this lesson does not depend on you buying one. When you compare products, check the price and plan limits on the vendor's own signup page on the day you read it, because those pages change more often than articles do. Our affiliate disclosure explains how this site makes money.
Illustrative example: someone who had set aside $150 this month for tools can complete all four tasks above for $0, keep the $150, and spend it later only if a specific reconciliation problem shows up twice. That is what an upgrade trigger looks like in practice.
Next step: Before you compare Systeme.io vs ClickFunnels or Bluehost vs Hostinger, use your finished report to decide which category you actually need to upgrade first: hosting, funnel page, email, or none. Our affiliate marketing tools guide includes dated pricing comparisons with clear pros and cons for each category and tells you what to skip. Affiliate disclosure: If you buy through the tools guide, we may earn a commission at no extra cost to you. See full disclosure. If you prefer the printable version of this lesson, use the free affiliate marketing checklist.
Turn this lesson into a repeatable monthly check
The free WGA checklist walks the same four tasks in order, so you can fill in your own campaign names and link rows as you go.
Choosing a tool for this? Affiliate Tracking Tools: Use Free Reports Before You Pay.
Frequently asked questions
How do I know which affiliate link produced a commission?
You match two records. First, tag links to your own pages so the campaign, page and placement are recorded when someone arrives [1]. Second, use a program-supported sub-ID where one exists, so the program's report can name the link. If the program only reports account totals, record the per-reader answer as unknown rather than guessing which post earned it.
How do I generate an affiliate link?
Join the program and take the unique link or ID it issues you. Amazon, for example, requires its own tagged link formats to be used properly [5]. Then add your own campaign parameters to the links you control — the page, email or pin that sends people to the offer — so your analytics also records where the click started.
Can I add UTM parameters to an affiliate link?
Be careful. UTM parameters describe traffic to pages you control, and the program's own tracked link is what the program recognises [5]. Adding parameters to the program's URL may or may not survive its redirect. For per-link data inside the program, use the sub-ID or tracking parameter the program actually supports, and check its help page first.
Why do my clicks and commissions never match up?
Because they measure different things. Keep separate columns so you never treat a click as a sale.
Is affiliate link tracking free to start?
Yes, for a small site. Use a spreadsheet for the worksheet, Search Console for search performance [3], your existing analytics for on-site behaviour, and each program's dashboard for commission status [4]. Paid tracking software becomes worth researching when manual reconciliation stops being reliable, not because a dashboard looks more professional.
Sources
- URL builders: Collect campaign data with custom URLs - Analytics Help (official page, retrieved October 2026)
- Campaigns and traffic sources - Analytics Help (official page, retrieved October 2026)
- How To Use Search Console | Google Search Central | Documentation | Google for Developers (official page, retrieved October 2026)
- Affiliate program | systeme.io (official page, retrieved October 2026)
- Amazon.com Associates Central - Associates Program Operating Agreement (official page, retrieved October 2026)
- Qualify Outbound Links for SEO | Google Search Central | Documentation | Google for Developers (official page, retrieved October 2026)
This lesson is general education, not legal, tax or financial advice. Tools, prices and provider terms change; check the linked official pages for the current version. How we write: editorial policy. This page has no affiliate links.