Skip to content
All posts

Attribution

The Complete Guide to Offline Ad Attribution

Adscano TeamUpdated 14 min read

Offline ad attribution is the work of tying a response (a scan, a call, a coupon, a lead, a sale) back to the printed or outdoor ad that caused it. You do it by building a countable response path into the ad before it runs, then giving every placement its own version of that path. Done well, it lets you say which newspaper edition, billboard site or flyer batch brought leads, and at what cost.

Picture the meeting after a big offline push. The search and social numbers are on a dashboard, down to the cost per click. Then someone asks about the money spent on billboards at three junctions, and the room goes quiet. "Brand awareness," someone offers, and everyone moves on. This guide is about ending that silence: the methods, how they compare, how to set one up, what to do for each medium, how to work out cost per lead, and the common mistakes. It also says plainly what these methods can't see.

What attribution means offline

Online, attribution is mostly automatic. A click carries a tag, the tag carries a trail, and the platform joins it up. Offline, nothing is automatic. A newspaper doesn't know who read it, and a billboard can't drop a cookie on a passing car.

So offline attribution flips the model. Instead of observing a trail after the fact, you build the trail into the ad before it ships. You give the reader a reason and a way to raise their hand, and you label that hand-raise so it lands against the exact placement that caused it.

Every system, however fancy, comes down to three parts:

  1. A trigger on the creative: something the reader can act on with a phone.
  2. A destination: where that action sends them.
  3. A tag: the label that says which ad, area and date the action came from.
Diagram of offline attribution: a trigger (a QR on the ad), a destination (a one-screen mobile page) and a tag (ad, city, date). The tag follows every step from scan to lead to customer to revenue, giving cost per lead and per customer for each placement.
The three moving parts, and the tag that carries each placement all the way from scan to revenue.

A QR code that sends everyone to one untagged address gives you a total scan count and nothing else. The upgrade is a separate tagged code per placement. Same ad in three cities? Three codes. Same creative in the paper and on a billboard? Two codes. That single decision is what turns a link into attribution.

Five ways to attribute an offline ad

There are five methods in common use. They answer different questions, and most advertisers end up using more than one.

Method What it counts Best for Main weakness Setup effort
QR codes Scans and the leads that follow, per placement Print and outdoor ads people can reach or stand near Only counts people who scan Low
Unique URLs Visits to an address printed only on that ad Audiences who prefer typing, or as a backup beside a code Few people type; many search your name instead Low
Call tracking Calls to a number printed only on that ad High-value sales where people want to talk Monthly cost per number; misses people who don't ring Medium
Coupon codes Redemptions of a code printed only on that ad Retail and restaurants, where you can check at the counter Codes get shared; only counts buyers Low to medium
Geo-lift tests The rise in sales or enquiries in areas with the ad, against areas without Large campaigns, and people who never respond directly Needs volume and time; doesn't name a single placement High

QR codes

The reader points a phone camera at the code and lands on a page, with no app. Each placement has its own code, so each scan is already labelled. A dynamic code also lets you change the page after printing, and it records when and roughly where the scan happened.

QR codes suit anything people can hold or stand in front of. They suit a billboard only if people can actually scan from where they are, which rules out many highway sites. Our dynamic QR code page explains the difference from a static code, and the free QR code generator makes a static code when you don't need tracking.

Unique URLs

Print a short address that appears nowhere else, such as yourbrand.com/sunday. Any visit to it came from that ad, or from someone it was passed to. Long addresses with UTM tags are useful behind a QR code, because nobody will type them by hand.

Unique URLs are cheap and work on a highway billboard or a radio spot, where scanning isn't possible. The weakness is that people tend to search your brand name instead of typing, and those visits look like plain search traffic. Check that the short address redirects properly, and that it can't be reached from your own site. There's more on tagging in UTM tags for print.

Call tracking

Print a dedicated phone number on each ad, forwarded to your real line. Each call to that number is credited to that ad, usually with its time and duration. For high-value sales such as property, healthcare or financial services, many buyers prefer to talk, and a QR code would miss them.

The cost is a monthly fee per number from a call-tracking provider, so it gets expensive across many placements. If you record calls, check the consent rules where you operate. Adscano doesn't provide tracked phone numbers, so if calls matter to you, run a call-tracking service alongside it.

Coupon codes

Print a code that is unique to the placement and ask for it at the counter or at checkout. Because it's redeemed at the point of sale, it measures buyers, not just interested people, which makes it the closest of these methods to revenue.

Two things weaken it. Codes get shared and end up on coupon sites, so credit can land on the wrong ad. And staff have to enter the code every time, which is the step that breaks on a busy Saturday. A discount also costs margin, so count it in your cost.

Geo-lift tests

Run the ad in some areas and hold it back in similar ones. Compare how sales or enquiries changed in each group against their own recent history. The difference is your estimated lift.

This is the only method here that can pick up people who saw the ad and never responded directly. It tells you whether the campaign moved the needle, including footfall and brand searches. It won't tell you which edition or site did the work, it needs clean sales data by area, and small businesses often have too little volume for the difference to rise above normal ups and downs. Other things happening in those areas can also distort it, such as a competitor's sale or a local holiday. Treat it as a test for larger spends, run for several weeks, and write down your method before you look at the result.

Which should you use?

Start with QR codes on anything people can scan, because they are cheap and give you a per-placement answer straight away. Add a unique URL or a dedicated phone number where scanning isn't realistic or where buyers want to talk. Add coupons where the sale happens at a counter. Consider a geo-lift test once your offline spend is large enough to justify holding some areas back.

What QR tracking does not measure

This matters more than any feature, so here it is in plain words.

QR tracking does not measure people who see an ad and don't scan. Someone can notice your billboard every day for a month, remember your name, and buy later through a search or a walk-in. They had a real response to your ad, and your scan count will never show it. The same goes for anyone who rings from memory, or tells a friend.

Several other limits follow from that:

  • Scans are not reach. A scan count tells you how many people acted, not how many people saw the ad.
  • Delayed responses are hard to credit. Someone who scans today may buy next month through another channel, unless your sales team records where the lead came from.
  • A scan is not a customer. It only shows curiosity. Count leads and sales as well.
  • New codes get a novelty bump. The first insert in a fresh area can do better than later ones, so don't project the first month across a year.
  • Your test scans count too. Scan proofs before the campaign goes live, or note how many you made.

So treat a scan count as the minimum an ad delivered, and use it to compare placements measured the same way. It's strong evidence for which placement did better, and weak evidence for the total value of the medium. To catch some of what it misses, add a "where did you hear about us?" question to your forms and your sales calls, and run a geo-lift test on the big spends.

How to set it up, step by step

  1. Decide what a result is. Pick the one outcome closest to money: a lead, a booking, a store visit with a coupon, or an order. Decide this before the ad runs, and agree it with the client if you're an agency.
  2. List your placements. Write down each thing you'd decide on separately next time: each edition, site, batch or list. If you'd never drop one and keep another, they can share a code.
  3. Give each placement its own path. Create one code or link per placement. All of them can open the same page, so you compare the placements and not the pages.
  4. Keep the creative and offer the same. If the offer changes between placements, you end up measuring the offer. Test offers separately.
  5. Build a one-screen mobile page. One offer, one action, a short form. Someone scanning from a bus stop on patchy mobile data won't wait for a carousel.
  6. Print a reason beside the code. "Scan for 20% off this weekend" beats a bare square. Say what they get, and make sure the page delivers it.
  7. Size and test it. Use the QR code size calculator to set the print width, then scan a real proof on two or three phones before the full run.
  8. Record the cost of each placement. Include media, printing, design and delivery. You'll need this for cost per lead, and it's hard to reconstruct later.
  9. Call leads quickly. A lead left waiting for a week goes cold, and that gets blamed on the ad. Set up alerts so someone responds the same day.
  10. Review and rebook. Compare placements once the response has slowed, then book more of what worked and drop what didn't.

Advice by medium

Each medium has its own quirks. These are the ones that change how you set up tracking.

Newspapers

A newspaper is read at about 40 cm, so print the code at least 4 cm (1.6 in) wide with a white border, and keep it off the fold and the gutter. Use one code per edition and, if you can, per date. Most of the response tends to come soon after the paper is delivered, so have someone ready to call leads that day. See newspaper ad tracking for more, and how to measure newspaper ad ROI for the sums.

Billboards and hoardings

Be honest about the site. Codes work where people stand or wait, such as bus shelters, stations and signals. Where traffic passes at speed, use a short URL or a dedicated phone number. Size the code for the distance, about 30 cm (12 in) wide for a 3 m (10 ft) scan, and give the printer an SVG. Compare sites by scans per day on display, not totals. Billboard QR code tracking covers site comparison, and how to measure billboard ROI covers the money.

Flyers and leaflets

Give each area, route or pick-up point its own code. Batches differ in size, so compare leads per 1,000 flyers and then cost per lead. A batch with almost no scans may mean the flyers never reached anyone, so check that before you blame the design. See flyer QR code tracking.

Direct mail

Split by mailing list, postal area, drop date or format, and judge by response per 1,000 pieces mailed. Keep the code away from the address block and any area your carrier reserves. Wait a few weeks before you decide, because mail tends to get opened late. See direct mail QR code tracking.

Posters

Put codes where people stop: queues, lifts, platforms and waiting rooms. Mount them at about eye level, and check the signal at the spot, since a basement may have none. Before you write off a location with no scans, go and look. The poster may have been covered or removed. See poster QR code tracking.

Magazines

Magazines keep being read long after the issue date, so keep the campaign live and judge later than you would a newspaper. Run the code in solid black ink, avoid the gutter, and test a proof on coated paper for glare. You can split by title, issue or position. See magazine ad QR code tracking.

Packaging and inserts

These reach people who've already bought, so the offer should be about repeat orders, referrals or support rather than a first sale. Use a code per product or batch. Remember that a printed code lasts as long as the box does, so use a dynamic code you can repoint.

How to calculate cost per lead

The formula is short:

Cost per lead = total cost of the ad ÷ leads from that ad.

The mistake is leaving costs out. Total cost means media, design, printing, delivery, and any discount you gave away. Leave out the print bill and a flyer looks better than it was.

From there, the rest of the chain follows:

  • Scan-to-lead rate = leads ÷ scans × 100
  • Cost per customer = total cost ÷ customers
  • ROI = (revenue − total cost) ÷ total cost × 100

Here is a worked example. These are made-up numbers for illustration, not results from any customer. All three ads are measured the same way, in one currency, with revenue of 200 per sale.

Newspaper ad Billboard Flyer batch
Total cost 1,000 3,000 500
Scans 400 300 80
Leads 60 30 20
Scan-to-lead rate 15% 10% 25%
Cost per lead 16.67 100.00 25.00
Customers 6 4 2
Cost per customer 166.67 750.00 250.00
Revenue 1,200 800 400
ROI 20% −73.3% −20%

The newspaper ad wins on cost per lead and is the only one that paid back directly. The flyer had the best scan-to-lead rate, yet still lost money at this size, which is why you shouldn't judge by a single rate. The billboard looks worst, but this is exactly where the limit above applies. Plenty of people may have seen it and bought without scanning, so before dropping it, check for a rise in calls, searches and walk-ins while it was up.

You don't need a spreadsheet for this. The offline ad ROI calculator works out every number above from your own figures, in any currency. There's more on what to track in 7 offline marketing metrics that actually matter.

Also work out what you can afford. If a customer brings in 200 and one lead in ten buys, a lead is worth at most 20 before you make a loss. In the table above, that makes the newspaper ad profitable and the other two not, before any effect you can't see.

How to compare placements fairly

Comparing two ads is only useful when the difference comes from the ad itself.

  • Use the same offer and creative across the placements you're comparing.
  • Compare over the same period, or per day on display, since placements rarely start and stop together.
  • Allow for the medium's speed. A newspaper responds in days, and a magazine in months.
  • Adjust for size. Use leads per 1,000 pieces for flyers and mail.
  • Repeat before you decide. One edition can be off for reasons unrelated to your ad, such as weather or a holiday.
  • Compare by cost per lead, then check that those leads actually buy.

Common mistakes

  1. One code across every placement. You'll know the campaign got a response, but not which ad to rebook.
  2. Sending scans to the homepage. People came for a specific offer. Send them to a page that has it.
  3. A bare code with no reason to scan. Say what they get, in words, right beside it.
  4. A code that's too small. Allow about one tenth of the scan distance, plus a white border on every side.
  5. Light code on a dark background. Some phones won't read it. Keep dark modules on a light background.
  6. Not testing the printed proof. A code that scans on screen can fail on glossy or thin paper.
  7. A static code on a long-running ad. If the page moves or the offer ends, a static code can't be changed, and the print run is wasted.
  8. Counting scans and stopping there. A campaign with plenty of scans and few leads usually has a landing page problem, not a media success.
  9. Changing the offer between placements, then crediting the medium for the difference.
  10. Leaving costs out of the sum. Print and delivery often change the answer.
  11. Judging too early. Direct mail and magazines take weeks or months to finish responding.
  12. Treating the scan count as the whole truth. It's the minimum an ad delivered, as the section above explains.

How Adscano fits

Adscano shows which newspaper ad or billboard brought the lead, with client-ready reports. That is offline ad attribution software: each campaign has one mobile page and lead form, and each placement gets its own QR code and link. You see scans, leads and scan-to-lead rate per placement, and a lead shows which placement it came from. If you enter a placement's ad cost, the campaign page and the client report show its cost per lead.

Agencies get a workspace per client and white-label reports, and you can see what one looks like in this sample client report, which uses illustrative numbers. There's a free plan with one live campaign and two placements, enough to compare two ads, and paid plans add more.

It doesn't do everything in this guide. Adscano doesn't include tracked phone numbers, geo-lift analysis or custom domains, and it can't count people who don't scan. Our comparisons with QR Tiger, Uniqode and Bitly say where another tool is the better choice.

Where to start

Don't try to measure everything at once. Pick your next offline booking, split it into two placements you'd genuinely decide between, and give each its own code with the same offer. Run it, then compare cost per lead. You'll know more about those two ads than you've known about any offline ad you've run, and you can start free with your next one.