How to Track a Marketing Campaign (Start Here)
A practical system for tracking marketing campaigns from scratch. Goals, channels, UTM conventions, and the tools to tie it together.
Before you tag anything
Most "campaign tracking" guides jump straight to UTM parameters. Here's the thing: tagging links is the easy part. The hard part is knowing what you're tracking and why.
If you can't answer "what does success look like for this campaign?" before you launch it, no amount of UTM data will help you. You'll have numbers. You won't have answers.
So start here.
Step 1: Define what you're measuring
Every campaign needs a goal that's specific enough to evaluate. "Drive traffic" isn't a goal. "Get 500 visits to the webinar registration page from LinkedIn in two weeks" is.
Good campaign goals have three parts:
- A metric. Clicks, registrations, purchases, form submissions.
- A number. 500 visits, 50 sign-ups, $10K in revenue.
- A timeframe. This week, this month, this quarter.
Write this down before you build a single link. The goal shapes everything downstream: which channels you use, how you tag them, and what you look at in your reports.
Attri has a goals feature that tracks pacing against your targets in real time. You set the metric, the target number, and the interval. The dashboard shows whether you're ahead or behind. Useful for teams that run recurring campaigns.
Step 2: Pick your channels
Where are you going to promote this campaign? List them. Be specific.
Not "social media." Which platforms? LinkedIn, Twitter, Instagram? Organic posts or paid ads? Both?
Each channel gets its own UTM source and medium. This is how you'll compare performance later. If you lump LinkedIn organic and LinkedIn ads under the same source with the same medium, you can't tell which one drove the results.
Example channel map for a webinar campaign:
| Channel | utm_source | utm_medium | |---------|-----------|------------| | LinkedIn organic post | linkedin | social | | LinkedIn paid ad | linkedin | cpc | | Email to existing list | newsletter | email | | Partner co-promotion | partner-name | referral | | Blog post CTA | blog | content |
Notice "blog" isn't tagged with UTMs. That's an internal link. Use event tracking for that, not UTM parameters. (If you're not sure why, read the UTM mistakes post.)
Step 3: Set your naming conventions
Before anyone on your team builds a link, agree on the values. This takes 10 minutes and saves hours of data cleanup.
The minimum you need:
- Allowed sources.
google,facebook,linkedin,newsletter,partner-name. Not "fb" or "Facebook" or "FB-Ads." - Allowed mediums.
cpc,email,social,referral,organic. Pick your set and document it. - Campaign name format. We use
yyyy-qq-descriptor:2026-q2-spring-webinar. The date prefix means campaigns sort chronologically in reports. The descriptor is readable.
Put this in a shared doc. Or use Attri's naming conventions feature, which gives your team a structured builder with dropdowns instead of free-text fields.
Step 4: Build and tag your links
Now you can tag. For each channel, create a link with the UTM parameters from your channel map.
If you're doing this manually, use a UTM builder. Fill in the fields, copy the URL, use it in your campaign.
If you're doing this for a team, use a tool that saves templates. Your "LinkedIn Paid" template pre-fills source, medium, and domain so nobody has to remember the conventions. One click. Attri does this, so do some spreadsheet setups.
Shorten the links if they'll be visible to humans (social posts, print, QR codes). Leave them long if they're hidden behind anchor text (email CTAs, blog links).
Step 5: Watch the data come in
Give your campaign 48 hours before drawing conclusions. Early data is noisy. But after a couple days, you should be able to answer:
- Which channel is driving the most traffic? Sort by source in your analytics.
- Which channel is driving the best traffic? Look at session duration, pages per visit, or conversion rate by source. Volume and quality are different things.
- Are you on pace for your goal? If your target was 500 visits in two weeks and you have 80 after three days, the math isn't working. Adjust channels or creative.
This is where most teams stop. They check the numbers once, maybe twice, then move on to the next campaign. The teams that get better at marketing are the ones that review the data after the campaign ends and write down what worked.
Step 6: Review and adjust
After the campaign ends:
- Which channel outperformed? Invest more there next time.
- Which channel underperformed? Was it the channel or the creative? Test before cutting it.
- Did the naming conventions hold up? Any rogue values in the data?
- What would you change about the tagging structure?
Keep a running log. Even a simple table: campaign name, goal, result, lessons. This is how you build institutional knowledge instead of starting from scratch every quarter.
The tools
You can do all of this with free tools. Google's Campaign URL Builder for tagging, GA4 for analytics, a Google Sheet for organizing links. It works. It just doesn't scale past two people.
When you're ready for one tool that handles link building, UTM tagging, naming conventions, click tracking, and campaign analytics in one place, Attri's free plan covers 5,000 events per month.
Start small. Iterate. The system matters more than the tool.