Charities and small teams

Keeping a campaign log your team will actually use

Every team that tags links eventually meets the same problem: a report full of campaign names and content values that nobody can explain. A campaign log fixes that. It is a single shared sheet recording every tagged link you create. This guide shows what to put in it, who fills it in, and how to keep it going after the first enthusiastic month.

Why a log, when GA4 already has the data?

GA4 records what happened: utm_content=v2-b brought in a good number of visits. It cannot tell you what v2-b was, who made it, where it was posted or what was happening that week. The log holds that context. Without it, good results are hard to repeat and odd results are hard to explain.

A log also helps when people leave. In small teams and charities, the person who set up a campaign may have moved on by the time anyone reviews it. The log is how their knowledge stays behind.

The columns that matter

Resist the urge to track everything. A log with thirty columns gets abandoned. These are enough:

ColumnWhat goes in itExample
Date createdWhen the link was made2026-11-03
CampaignThe utm_campaign value2026-11-winter-appeal
Source / mediumBoth values togethernewsletter / email
ContentThe utm_content value, if anylead-button
Where it was usedA plain description a newcomer would understandMain button in November supporter newsletter
Full linkThe exact tagged linkhttps://example.org/winter-appeal?utm_source=...
OwnerWho created or sent itComms officer
NotesAnything unusualResent on 10 Nov with new subject line

The "Where it was used" column is the one people skip and later regret. Write it for someone who joins next year.

Where to keep it

Use whatever your team already opens every day: a shared spreadsheet is ideal. One sheet for the current year, a new tab or file each year. Avoid splitting it by channel or by person; the value is in having everything in one place you can search.

The UTM Builder's Export CSV button gives you a ready-made starting point. It downloads every link you just generated with columns for the platform, full link, base address, each UTM value, the likely GA4 channel and the date. Paste those rows into your log and add the "Where it was used" and "Owner" columns by hand.

The one rule: log before you send

A log filled in afterwards is a log that gets forgotten. Make it part of building the link: create the link, paste it into the log, then use it. If your team builds links in batches before a campaign, log the batch in one go.

For links that change over time, such as an Instagram bio link, log each change as a new row with the date. A spike in a report three months later can then be matched to the link that was live at the time.

Keeping it alive

Logs die from neglect, not from bad design. A few habits keep them going:

Example: answering a trustee's question

A trustee asks why March showed a big rise in visits from partner / referral. The comms officer searches the log for March, finds a row reading "Link in partner charity's spring e-newsletter, arranged by events team", and can answer in a minute, along with who arranged it and whether it might happen again. Without the log, it would have taken a round of emails, and the answer might never have been found.

What not to put in the log

A campaign log is about links, not people. Keep personal information out of it entirely:

If you need to record that a link went to a particular group, describe the group ("monthly donors list", "volunteer WhatsApp group") rather than the individuals in it. That keeps the log safe to share with anyone on the team and keeps your analytics free of personal data.

Connecting the log to your naming rules

The log and your naming rules work together. The rules keep values consistent; the log explains them. When you find a value in the log that breaks the rules, such as a capital letter or an unapproved medium, it is a good moment to correct the habit before it spreads. UTM naming conventions has a one-page set of rules to pair with this log.

A starter template

Create a spreadsheet with these headings in the first row, and you are ready:

Date created | Campaign | Source / medium | Content | Where it was used | Full link | Owner | Notes | Visits (first 2 weeks)

Freeze the header row, turn on filters, and sort by date with the newest at the top. That is all the structure you need. Most teams find that after one or two campaigns the log becomes the first place they look when planning the next one, which is the clearest sign it is working.