I've been using targeted flyer drops around Tynemouth as the way to market the business and get my car washing service off the ground. So far I've ran 2 campaigns with the same flyer and now it's time to experiment a little. I've read the way I can do that is with something called A/B testing.
What is A/B Testing?
A/B testing is a simple way to compare two different versions of something – like a flyer, email or website – to see which one performs better.
You split your audience into two groups:
- Group A sees version A of your flyer.
- Group B sees version B of your flyer.
Then you compare which group responds more – in my case, that's by visiting the website or making a booking. This helps you learn what works best so you can improve your marketing over time. But how do you know which is which? By using something called a UTM.
What’s a UTM?
To track which flyer people scanned, I’ve added special codes to the links behind the QR codes on each flyer. These are called UTM parameters which stands for Urchin Tracking Module. Fascinating fact 🤓: the weird name is because these were created by a company called Urchin Software in the 90s, Google bought them and set up Google Analytics – sorry, too much info but I just had to know and now you do too. 😂
Anyway, they’re bits of text added to a link that help analytics tools (like Plausible which I use) understand where a visitor came from.
For example, the link behind Flyer A might look like this:
https://adamautocare.co.uk/?utm_source=flyer&utm_medium=print&utm_campaign=ab_test&utm_content=A
This tells me the visit came from a flyer (print), part of the A/B test and it was version A. Flyer B uses the same structure but with utm_content=B.
Making the QR Codes Work
One challenge I didn’t expect was the QR codes for the flyers themselves. It turns out the longer your URL, the more complex the QR code pattern. Makes sense but I didn't know that. This can be a problem because they might not scan properly once printed, especially on a small flyer.
To fix this I needed to create short hidden links on my site with the redirect written into my Python code:
When someone scans the QR code, they go to one of these short links and my website immediately redirects them to the full tracking URL in the background. That way the QR codes stay simple and scannable but I still get the full tracking information 😅.
One thing I’m learning through this process: nothing is ever as straightforward as it seems! There’s always some unexpected bit of complexity to figure out.
My Plan
Here’s how I’m running the experiment:
- I’ve designed two different flyers. Flyer A is my original design. Flyer B is a new version with some changes based on early feedback.
- I’ll print and drop 100 flyers in total – 50 of each version.
- I’ll drop them in a controlled way – for example, Flyer A at even-numbered houses and Flyer B at odd-numbered ones, so the test stays fair and even if the fancy tracking fails and people book then I'll know by the house number which version they got 💡.
How I’ll Measure Success
I’m using Plausible Analytics to:
- Track how many people scan each flyer’s QR code.
- See if they go on to make a booking.
By comparing visits and bookings from each version I can learn which flyer is more effective – and why. That’ll help me improve future marketing.
Why This Matters
I can't know how to improve things unless I test them in the real world and measure the results. I'm trying to do things the way bigger businesses do them, just at a much smaller scale. It'll let me make decisions based on data – only a small amount but it's better than none at all. Hopefully I can make this all work and I'll do another post with the results next week!