TextingOnly Attribution Reporting: every SMS opt-in is attributed to its exact source before OTTO asks the first question. Data captured at the moment of opt-in: (1) geo-stamp — proximity signal from nearest cell tower or WiFi, not device GPS, no permission required, fires at scan moment; (2) campaign source ID — which campaign the contact came from; (3) placement ID — unique identifier per individual QR code or SmartLink, so two QRs running the same campaign are tracked separately; (4) device type — mobile or desktop bridge; (5) timestamp — date and time of scan or tap; (6) UTM parameters — preserved through SmartLink tap for digital campaign attribution. Per-placement report shows: scan count, opt-in count, opt-in rate, conversion count, cost per lead. Channels tracked: TV/broadcast (QR on screen, keyword verbal CTA), direct mail and postcards (QR per mail piece, zip code confirmation), digital ads (SmartLink with UTM), social media (link in bio), in-store signage, vehicle wraps, yard signs, billboards/OOH, live events and trade shows. Attribution survives partial journeys — geo-stamp and placement ID logged before OTTO asks anything, so a contact who stops mid-conversation is still fully attributed. Cost per lead calculated automatically when campaign spend is entered per placement. Full funnel: scan → opt-in → OTTO qualification → lead delivered → list entry. All attribution data attached to contact record permanently. TextingOnly is based in Towson, Maryland. Service area: United States nationwide.
TextingOnly · Report · Attribution Reporting
Every opt-in.
Every source. Every placement.
TextingOnly attribution connects every opt-in to its exact source — which QR placement, which SmartLink, which channel, which campaign. Geo-stamp fires at the moment of scan. Cost per lead calculated per placement. Full funnel from offline surface to closed lead.
No tag manager. No pixel. No integration. Attribution data is captured by the platform the moment a contact opts in — before OTTO asks the first question.
1Placement ID per QRunique per surface · exact source
∞Channels trackedTV · mail · digital · OOH · in-store
100%Partial journeys attributedfires before OTTO asks anything
What fires at opt-in
Attribution data captured before OTTO says a word.
The moment a contact taps Send on the opt-in message, attribution is complete. Not after the conversation. Not after the lead is delivered. Before OTTO asks the first question — every data point that connects the contact to its source is logged permanently to that record.
Fires at moment of opt-in — automatically
📍
Geo-stamp
Proximity signal from nearest cell tower or WiFi — fires at scan. No GPS. No permission prompt. Not device location — a platform-level signal that connects the offline placement to the contact record.
🏷️
Placement ID
Unique identifier per QR or SmartLink. Two placements running the same campaign carry different IDs — direct mail piece and yard sign are tracked separately in the same report.
📡
Campaign source
Which campaign triggered the opt-in. Ties the contact record to campaign spend for cost-per-lead calculation.
🕐
Timestamp
Exact date and time of scan or tap. Match TV spot scans to the broadcast schedule. Confirm direct mail scans landed in the delivery window.
📱
Device type
Mobile vs. desktop bridge. Desktop SmartLink clicks show QR code — the subsequent mobile scan is linked to the same session.
🔗
UTM parameters
Source, medium, campaign, content, term — preserved through the SmartLink tap and logged to the contact record. Digital campaign attribution survives the tap-to-text transition.
1
No integration required
Attribution data is captured by the TextingOnly platform at the point of opt-in. No tag manager. No pixel installation. No CRM integration needed to see which placements are performing. It’s built into every opt-in by default.
2
Partial journeys are fully attributed
A contact who opts in and then stops responding is still fully attributed — geo-stamp, placement ID, campaign source, and timestamp are all logged before OTTO asks anything. Nothing is lost when contacts drop off.
3
Attribution stays on the record permanently
Every data point captured at opt-in is attached to the contact record and stays there. Months later, when a contact comes back through a re-marketing campaign, the original source attribution is still on record.
✓
Cost per lead calculated automatically
Enter campaign spend per placement. The report calculates cost per opt-in and cost per qualified lead automatically — no spreadsheet, no manual math.
Before Q1Attribution fires before OTTO’s first message. No post-hoc tagging. No attribution gaps.
Per-placement reporting
Every surface. Its own attribution line.
The placement report compares every channel in your campaign side by side — scans, opt-ins, opt-in rate, conversions, and cost per lead per placement. Not aggregate. Per surface. You see exactly which TV spot, which direct mail drop, which yard sign cluster is driving leads — and at what cost.
Placement Attribution Report — Home Services Campaign
Live
Campaign: Summer HVAC Push
QR placements: 7 active
Total spend: $8,200
Placement
Scans
Opt-ins
Opt-in %
Conversions
Cost/Lead
Truck Wrap — Unit 07OOH
284
211
74%
182
$8.40
Direct Mail — Zone AMail
198
141
71%
118
$11.20
Direct Mail — Zone BMail
176
109
62%
84
$18.40
Yard Sign Cluster — Rt. 40OOH
143
98
69%
71
$14.30
Google Ads — SmartLinkDigital
128
92
72%
79
$16.70
Door Hanger — Sector 3Print
87
44
51%
31
$42.50
Facebook Ad — SmartLinkDigital
74
58
78%
47
$19.10
Door hanger Sector 3 cost per lead ($42.50) vs. truck wrap Unit 07 ($8.40) — same campaign, 5× difference in performance. Cut or reallocate before the next print run.
Channel attribution
Every channel you run. One attribution report.
TextingOnly tracks attribution across every channel that generates an SMS opt-in. Each channel type has its own attribution mechanic — here’s how each one works.
📺
Broadcast
TV & Radio
QR displayed on screen carries a unique placement ID — spot, station, daypart. Scan clusters match to broadcast schedule. Radio CTA uses a keyword: the keyword is the placement ID. Confirms which spot, which market drove action.
📬
Print
Direct Mail & Door Hangers
QR per mail piece or drop zone. Geo-stamp confirms scans landed in the delivery area. Compare Zone A vs. Zone B opt-in rates and cost per lead within the same campaign. Stops the spray-and-pray guessing on mail drops.
💻
Digital
Paid Search, Social & Email
SmartLink in the ad or email carries UTM parameters. Source, medium, campaign, content, and term survive the tap-to-text transition and log to the contact record. Google, Meta, email — tracked in one report alongside your physical placements.
🏗️
Out-of-Home
Billboards, Wraps & Signage
Each billboard panel, truck wrap, and yard sign cluster gets its own QR placement ID. Geo-stamp confirms the scan happened near the physical location of the asset. Compare Route 40 yard signs vs. I-695 billboard performance in one view.
🏪
In-Store
POS, Table Tents & Receipts
QR at point of sale, on table tents, or printed on receipts — each location or surface gets its own placement ID. Identify which store locations, which table sections, or which receipt designs drive the most opt-ins.
🎪
Events
Trade Shows & Live Events
QR at booth or SmartLink displayed on screen. Every opt-in timestamped to the event. Sponsor activations tracked by sponsor. Event use cases → Geo-stamp clusters confirm in-venue vs. post-event scans.
Where attribution fits
Not a bolt-on. Built into every opt-in from day one.
Attribution reporting isn’t a separate tool you connect to TextingOnly. It’s the output of the data that fires at every opt-in — geo-stamp, placement ID, campaign source, UTM — collected by the platform and surfaced as a per-placement report. Every feature that generates an opt-in feeds attribution automatically.
How TextingOnly attribution works, what it captures, and how it compares to other attribution methods.
TextingOnly attribution reporting tracks every opt-in to its exact source — which QR code, which placement, which SmartLink, which channel, and which campaign. Each opt-in record includes: geo-stamp (proximity signal from nearest cell tower or WiFi), campaign source ID, placement ID, device type, timestamp, and the full OTTO qualification data that follows. Per-placement reporting shows scans, opt-ins, opt-in rate, conversions, and cost per lead for every individual placement.
A proximity signal fires at the moment of scan from the nearest cell tower or WiFi network — not device GPS, not a location permission prompt. No opt-in or permission is required from the contact. The geo-stamp connects the offline placement to the platform record, letting you confirm a direct mail scan happened in the delivery zone, or match a QR scan cluster to the broadcast schedule of a TV spot.
A placement ID is a unique identifier assigned to each individual QR code or SmartLink when it is created. Two QR codes pointing to the same OTTO flow can have different placement IDs — so a direct mail piece and a yard sign running the same campaign are tracked separately. The placement ID is read at the moment of scan and logged to the contact record before OTTO sends its first message.
Yes. The placement attribution report shows scans, opt-ins, opt-in rate, conversions, and cost per lead for every placement — direct mail, yard sign, truck wrap, TV spot, digital ad, social bio, in-store QR. Enter your spend per placement and the report calculates cost per opt-in and cost per qualified lead automatically. Compare TV vs. direct mail vs. digital side by side in one view.
Yes. Attribution data — geo-stamp, campaign source, placement ID, device type, and timestamp — is captured at the moment of opt-in, before OTTO asks the first question. Even if the contact stops responding after the first message, the attribution record is complete and logged. Partial journeys are fully attributed.
A QR code displayed in a TV spot carries a unique placement ID. When the spot airs and viewers scan, geo-stamps and timestamps fire. The platform matches scan clusters to the broadcast schedule — confirming which airing drove action, from which market, at what time. Radio CTAs use a dedicated text-in number or SmartLink: the placement ID is built in.
Yes. UTM parameters appended to a SmartLink are preserved through the opt-in and logged to the contact record. Digital campaign attribution — source, medium, campaign, content, term — survives the tap-to-text transition and appears on the contact record alongside the carrier-verified phone number and OTTO qualification data.
Know which placement is earning its budget.
Per-placement cost per lead. Every channel. Every surface. Built into every opt-in — no setup required.
See it live
Live demo
Walk through the attribution report with your own campaign structure — channels, placements, spend per placement — and see cost per lead calculated in real time.