Somewhere between “I have no idea if this worked” and a forty-tab analytics stack is a version of measurement that a solo founder can keep up with. It looks like three numbers, one link convention and a weekly review.
Pick one primary metric
Before the campaign starts, decide what “working” means. For most indie products at the start, that is cost per signup — total spend divided by new accounts you can attribute to the campaign.
Write it down somewhere you will see it. If the campaign produces clicks but no signups, the metric answers the question the clicks cannot.
The three numbers that matter early
1. Click-through rate (CTR). Did the message match the audience? A low CTR usually means the headline or the placement is wrong, not the product.
2. Landing page conversion rate. Of the people who clicked, how many did the thing? This isolates the page from the ad. If CTR is healthy and conversion is not, fix the page or the offer.
3. Cost per signup. The number that decides whether to continue. Compare it with what a customer is worth to you, not with what another company brags about on X.
Everything else — impressions, reach, time on page, scroll depth — is context. Useful when something looks strange. Not useful as a daily scoreboard.
Use one link convention
The cheapest attribution system is a naming convention you never break:
?utm_source=roketad&utm_medium=paid&utm_campaign=launch-week-1
Rules that keep it clean:
- Lowercase everything.
- One source per placement.
- One campaign name per test, not per day.
- Store the convention in a note so future-you uses the same words.
If you sponsor a newsletter, use a unique link as well as UTMs. Publishers sometimes strip parameters; a unique path survives.
Ask at signup
Analytics can tell you where a click came from. It cannot tell you why someone chose you. A single optional field — “How did you hear about us?” — fills that gap and catches word of mouth that UTMs miss.
Keep it optional. Forced attribution questions reduce conversion and produce noisy answers.
Set a review window
Checking a campaign every hour is not measurement. It is anxiety with a dashboard.
Decide the review cadence before launch:
- First 48 hours: a quick sanity check for broken links and obvious errors.
- Day 7: first real read. Enough clicks to see a direction.
- Day 14: decision point. Continue, change one variable, or stop.
Between check-ins, work on the product. The campaign will still be there.
Know when to kill a campaign
Stop or change a campaign when:
- Spend has passed your test budget with no signups.
- CTR is far below the placement’s normal range after a fair sample.
- Signups arrive but do not activate — the audience is wrong, not the ad.
- The cost per signup is more than the customer is worth and the trend is flat.
Do not kill a campaign in the first 24 hours because the number looks small. Small samples produce dramatic-looking noise.
Build a one-page report
At the end of each test, fill in the same five lines:
- Channel and placement
- Spend
- Clicks and CTR
- Signups and conversion rate
- Cost per signup + one sentence on what to try next
That page becomes the most useful marketing document you own. It is also the thing that stops you from repeating a failed experiment six months later because you forgot.
Measurement is not a dashboard. It is a habit of asking one clear question and writing down the answer honestly.
When your campaigns run on RoketAd, this is the report we want to make obvious by default. Join the waitlist to see it when it opens.