You can learn where customers come from without paying for attribution software. Use four pieces together: tagged campaign links (UTM parameters) on external links you control, and the referrer and channel reports in the analytics tool you already have. Add a “How did you hear about us?” question on your contact form and in your first conversation, and keep one spreadsheet that records each lead’s source next to its eventual value. The tags and reports provide partial evidence about digital visits. The question can reveal word of mouth and context software misses. The spreadsheet connects those clues to sales records.
That’s the setup I use: tagged links, the referrer reports in my analytics tools, and a “how did you hear” question. Below is how to set each piece up, how to reconcile them when they disagree, and how to turn the results into decisions.
Why Expensive Attribution Software Rarely Fits a Small Business
Attribution software tries to credit each sale to every ad, email, and page visit that led to it. It’s built for businesses with large ad budgets and thousands of transactions a month, where small percentage shifts in spend are worth modeling.
A small business often has too few comparable sales across channels to justify complex attribution modeling, especially when its sales cycle is long. There is no universal customer-count cutoff; the useful sample depends on the decision and how much data each channel produces. Customers may also arrive through channels software can’t see: a recommendation at dinner, a podcast mention, or a forwarded email. Privacy settings, ad blockers, and people switching between phone and laptop break the trail further.
My view is to stay on free tools for as long as they cover what you need. For customer sources, they can cover the first useful decisions. Paying for a platform before you’ve tried a disciplined free routine may buy a more expensive version of the same blind spots.
Piece 1: Tag the Campaign Links You Control
A UTM parameter is a label added to the end of a web address. When someone clicks the link, your analytics tool reads the label and records where the visit came from. Nothing changes for the visitor; they land on the same page.
A tagged link looks like this:
Three tags are enough:
| Tag | What it records | Examples |
|---|---|---|
utm_source | Who or what sent the visit | newsletter, linkedin, x, chamber_directory |
utm_medium | The type of channel | email, social, referral, cpc, print |
utm_campaign | The specific effort | 2026_10_newsletter, fall_workshop |
Google’s free Campaign URL Builder assembles the link for you: paste the page address, fill in the three fields, and copy the result. Most email tools and link shorteners can also add tags automatically.
Naming rules that keep the data clean
- Use lowercase everywhere. Analytics tools treat
LinkedInandlinkedinas two different sources, and your report splits in half. - Pick underscores or hyphens and use the same one everywhere, never spaces.
fall-workshopandfall_workshopare reported as different campaigns. - Use standard medium names like
email,social,cpc, andreferral. GA4 uses the medium to sort visits into channels, and a made-up value likenewsletter_blastcan land in “Unassigned.” - Keep a list. One tab in a spreadsheet with every tagged link, the date, and what it was for. When three people create links, the list is what keeps
xfrom becomingtwitterandX_postsby spring. - Don’t tag links between pages of your own site. Internal UTM tags can distort campaign or source attribution; they are meant for incoming campaigns.
Where to use them: newsletters, social posts and profile links, directory listings or partner links you manage, email signatures, and ads where manual tags make sense. Tag external campaign links you control; search results, independent editorial links, and links you cannot edit are outside this routine.
Piece 2: Read the Referrer Reports You Already Have
Tagged links only cover links you created. Your analytics tool may record a referring website or app for other visits when the referrer is passed and tracking is allowed. Referrer reports are useful, but they do not identify every source.
- In GA4: Find the Traffic acquisition report (under Reports → Acquisition in the Life cycle collection). Change the dimension to Session source / medium to see individual sources, or Session campaign to see your tagged campaigns. Other report collections can place it elsewhere.
- In privacy-focused tools like Umami or Plausible: the referrers or sources panel on the main dashboard, with UTM values usually shown alongside.
Two things to know about referrer data:
- “Direct” is partly a catch-all. It includes people who typed your address, but also visits where the tool couldn’t tell the source, such as links in some messaging apps, documents, and email clients. A large “Direct” number means some of your sources are hidden, not that everyone already knew you.
- It shows the last step, not the story. Someone who read your article in March, forgot about it, and searched your name in May shows up as organic search or direct. The analytics are correct about the click and silent about why they came back.
That second gap is why the next piece matters.
Piece 3: Ask Customers How They Heard About You
No tracking code sees a conversation over coffee, a recommendation in a group chat, or a podcast mention. The customer knows. Ask them.
On the contact form
Add one field: “How did you hear about us?” Make it an open text box, and make it optional so it doesn’t cost you inquiries.
An optional open-text field can capture more detail than a fixed dropdown. It also takes time to classify consistently, so choose the format that your team will actually review. A long list of vague options (“Social media,” “Search engine,” “Friend”) can hide a useful name or story.
- A dropdown records “Social media.” Open text records “Saw your post about month-end reports on LinkedIn, then looked you up.”
- A dropdown records “Referral.” Open text records “My accountant, Priya, said you’d sorted out her client’s reporting.”
The second version tells you which post worked and which relationship to thank.
In the first conversation
Ask again, in person or on the call, even if they filled in the form: “Before we start, who can we thank for sending you our way?” People often give a fuller answer out loud, and phone inquiries never touch the form at all. If whoever answers the phone doesn’t ask, phone leads have no source.
Piece 4: One Spreadsheet That Ties Sources to Revenue
Website analytics generally stops before the final sale. Revenue lives in your sales records. The spreadsheet is where the two meet. A shared Google Sheet or Excel file is enough; a CRM you already pay for works too.
One row per lead, with these columns:
| Column | What goes in it |
|---|---|
| Date | When they first reached out |
| Lead | Name or company |
| Recorded source | What the analytics or UTM tag says (e.g., newsletter / email, google / organic, (direct)) |
| Stated source | What they told you on the form or the call |
| Credited source | Your decision, from a short fixed list (see below) |
| Status | Open, won, or lost |
| Value | Contract or first-order value, once known |
The recorded source is the column that needs a deliberate setup. Analytics tools show UTM tags in aggregate reports, not next to an individual lead’s name. If your form tool supports hidden fields, it can pass the UTM values from the page address into the notification email or CRM entry, which fills this column automatically. If it doesn’t, leave the column blank and rely on the stated source rather than guessing.
Keep the credited source list short so the monthly totals mean something. For most service businesses, five categories are enough: website and content, referrals and word of mouth, direct outreach, partners and community, and paid ads.
When recorded and stated sources disagree
They often will. Treat the customer’s answer as one clue about why they remembered you and analytics as one clue about the visit path. Neither is a complete causal history.
- Recorded source:
(direct) / (none) - Stated source: “Read your article on dashboard mistakes a few weeks ago, then typed your name in.”
- Credited source: website and content. The article started it; the direct visit was just how they came back.
When there’s no stated source, use the recorded one as a working classification. When neither exists, mark it “unknown” rather than guessing. Recorded and stated sources are clues, and a customer’s memory can also be incomplete. Your credited-source column is a consistent management judgment, not proof that one channel caused the sale. A growing “unknown” count is a prompt to check whether the question is being asked and recorded.
If your inquiries arrive by email, phone, and form, you probably already have most of this information scattered across your inbox and invoicing system. The business data you already have covers pulling it together.
Tracking Offline Sources for Free
Print, events, signs, and phone calls need a little more setup, but none of it costs money.
- A memorable redirect. Set up a short address like
yourfirm.com/workshopthat forwards to a tagged link (?utm_source=fall_workshop&utm_medium=print). Most website platforms can create redirects without a developer. Put the short address on the flyer or slide, and test it first: open it in a private browser window and confirm the tag is still in the address bar after it forwards. - QR codes pointing to tagged links. Static QR codes are free to generate. Test the code before printing, and point it at a page on your site so you control where it goes.
- A standard phone question. Whoever answers asks the same “who can we thank?” question and records the answer in the spreadsheet.
The Monthly Source Review
Once a month, filter the spreadsheet to that month’s leads and total them by credited source: how many leads, how many won, and how much revenue.
| Credited source | Leads | Won | Revenue |
|---|---|---|---|
| Referrals and word of mouth | 5 | 3 | $13,500 |
| Website and content | 7 | 2 | $6,000 |
| Partners and community | 2 | 1 | $4,000 |
| Paid ads | 4 | 0 | $0 |
| Unknown | 2 | 0 | $0 |
| Total | 20 | 6 | $23,500 |
Before changing a channel, look at how many leads and sales you actually have, how long they take to close, and what that channel costs in money and time. A month may be enough to spot a broken tracking link but too little to judge a long sales cycle. Choose a review window and a time or spending limit in advance; if a source still produces no useful leads over that window, investigate whether to change or pause it.
Put the headline numbers on your monthly scorecard: leads and won revenue by source. Keep the underlying recorded and stated sources available so you can revisit a classification when new information appears.
Free Source-Tracking Checklist
- External campaign links I control carry consistently named, lowercase UTM tags.
- I keep a list of tagged links and their naming conventions.
- I check source / medium or referrer reports monthly.
- My contact form has an optional, open-text “How did you hear about us?” field.
- Whoever takes calls asks the same question.
- Every lead goes in one spreadsheet with recorded, stated, and credited sources.
- Won deals have a value recorded.
- I review leads and revenue by source monthly and decide quarterly.
Frequently Asked Questions
What are UTM parameters?
Labels added to the end of a link that tell your analytics tool where the click came from. The three that matter are source, medium, and campaign.
Do UTM tags affect SEO?
Not when you use them on links you share elsewhere. Don’t use them on links between your own pages.
What if customers don’t answer the “how did you hear” question?
Some won’t. Keep it optional, ask again in the first conversation, and fall back on the recorded source. Mark the rest “unknown” and watch whether that count is growing.
Is a dropdown ever better than open text?
When you have a large number of inquiries and need clean categories automatically. Even then, add an “Other (please specify)” option. For most small businesses, open text plus your own credited-source column works better.
When is paid attribution software worth it?
When you make repeated budget decisions across several channels, have enough conversion data to evaluate the model’s output, and the expected benefit exceeds the software and operating cost. Test whether the tool answers a decision your free routine cannot.