The Scenario
You're a marketing analyst and the regional campaign manager just dropped a message asking why the Pacific Northwest region's response rate looks lower than expected. You ran a postcard campaign last month — ten QR codes, one per region — and someone eyeballed the scan numbers in the Lob dashboard last week and flagged the discrepancy.
The problem: the dashboard gives you scan counts for each code individually. You'd need to open ten separate detail views, copy the numbers out, go back to your spreadsheet, match each code to its region, and calculate response rates as a percentage of send volume. You've done it before. It took forty-five minutes and you made a transcription error in row seven.
The bad version:
- Navigate to each QR code detail page in Lob, note the scan count and last scan date
- Paste the numbers into a staging tab, trying not to lose track of which code belongs to which region
- Realize the sheet doesn't have a column for "scans per day" yet — add one, write the formula, discover the dates came in mixed formats
The regional manager wants a shareable table by end of day. You're supposed to be analyzing what the data means, not babysitting its transport from one screen to another.
The Easy Way: One Prompt in SheetXAI
SheetXAI is an AI agent that lives inside your Google Sheet. It reads the sheet, connects to Lob's analytics API, and writes QR scan data directly into the range you specify — sorted, labeled, and ready for analysis.
Pull Lob QR code scan analytics for all codes created in the last 60 days and write the QR code ID, scan count, and creation date into my Google Sheet, adding a column that calculates scans-per-day.
What You Get
- One row per QR code with ID, total scan count, and creation date written into the sheet
- A calculated scans-per-day column derived from scan count and creation date
- Results sorted by scan count descending so the highest-performing codes sit at the top
- Any codes with zero scans included in the output, not silently dropped
What If the Data Is Not Quite Ready
The codes need to be matched to region names that live in a lookup tab
Pull all Lob QR code analytics and write QR code ID, scan count, and last scan date into columns A, B, and C. Then look up each QR code ID against the 'Region Map' tab where column A is QR code ID and column B is region name, and write the matched region name into column D.
I only want codes from a specific campaign window, not the last 60 days
List all Lob QR code analytics for codes created between January 15 and February 28 and write the QR code ID, scan count, and last scan date into this sheet. Add a column that flags any code with fewer than 5 scans as 'Low response'.
Send volumes live in the sheet and I need response rate calculated per row
Write the QR code ID, scan count, and last scan date from Lob into columns A, B, and C. Then divide the scan count in column B by the send volume in column D and write the response rate as a percentage in column E, formatted to two decimal places.
I need a single summary row per region, not one row per code
Pull all Lob QR code analytics, look up region from the 'Region Map' tab, then group by region and write one summary row per region showing region name, total scans, average scans-per-code, and the date of the most recent scan.
One prompt does the pull, the join, and the aggregation together.
Try It
Get the 7-day free trial of SheetXAI and open the sheet where your campaign send volumes live, then ask it to pull in Lob QR scan analytics and calculate response rates per row. Or see the related spoke on auditing your Lob short link inventory and the full Lob integration overview.
