Skip to main content
QrZeo
Use cases

Ten jobs QrZeo does start to finish

Features are claims; workflows are proof. Each of these ten jobs below runs start to finish — the problem, then the exact steps in the product — so you can judge whether QrZeo fits before you sign up. Every step describes shipping functionality.

A menu that changes without reprinting the table cards

You laminated 200 table cards in March. The menu changes in June, and again in September. Reprinting three times a year is the cost of a static code.

  1. Create a dynamic Menu code and give it a readable slug like qrz.eo/patio-menu.
  2. Upload the current menu PDF to Storage and point the code at it.
  3. Print the cards once. The pattern encodes the short link, not the menu.
  4. When the menu changes, upload the new PDF over the old one — every card follows immediately.
  5. Check the Analytics tab to see which service periods actually produce scans.

One code per table, so you know which ones get used

A single code on every table tells you the menu was opened 4,000 times. It cannot tell you the patio outperforms the back room three to one.

  1. Build a CSV with one row per table: the destination plus a table number.
  2. Open Create QR, switch to Bulk, and drop the CSV in — the first column becomes the destination.
  3. Set the batch design once; it applies to all of them.
  4. Save the batch into a folder named for the venue, then download all as PNGs.
  5. Compare per-code scan counts in Analytics to see which placements earn their space.

Packaging printed before the destination exists

The print run for packaging is booked months ahead of launch. The product page will not exist for another six weeks, and the URL will change twice before it does.

  1. Create a dynamic Website code and point it at a holding page for now.
  2. Send the SVG to the printer — vector, so it scales to any packaging size.
  3. At launch, edit the destination to the product page. Printed stock updates on the next scan.
  4. A year later, re-point the same code to a support article as the product matures.

Attributing a campaign across print, poster and packaging

The same campaign runs in three places and all three point at the same page. Analytics shows one number, so the debate about which placement worked never resolves.

  1. Create one dynamic code per placement, all pointing at the same destination.
  2. Name them for the placement, and tag them all with the campaign name.
  3. Filter the code list by that tag to see the set side by side.
  4. Read per-code scan counts, plus device and country splits, in each code drawer.

Testing two destinations behind one printed code

You want to know whether the long-form landing page converts better than the short one, but the code is already printed on ten thousand flyers.

  1. Open the code and switch to the A/B testing tab.
  2. Set a traffic split between the current destination and a variant.
  3. Let it run — scans divide between the two automatically.
  4. Stop the test when one leads; all traffic returns to the winner.

Generating a code per shipment, programmatically

Every parcel needs its own tracking code on the label. Making them by hand is not a workflow, it is a full-time job.

  1. Create a live API key scoped to the shipping workspace.
  2. Call POST /v1/qr from your fulfilment service as each shipment is created.
  3. Drop the returned SVG URL straight into the label template.
  4. Read scan events per code via the API to confirm delivery scans.

Wi-Fi guests can join without asking at the desk

Reception reads out a 16-character password twenty times a day, and gets it wrong occasionally.

  1. Create a Wi-Fi code with the network name, security mode and password.
  2. Print it on the table tent or room card. It works with no internet connection.
  3. Note that Wi-Fi codes are always static — the credentials live in the pattern.
  4. If the password changes, reprint. That is the trade for offline reliability.

Retiring a code without breaking everything else

A seasonal promotion ended. The codes are still out there, and the destination is now a 404.

  1. Find the code in the list and pause it rather than deleting it.
  2. Scans stop resolving and the history is preserved.
  3. Next season, re-point it at the new promotion and resume it.
  4. Delete only when the printed material itself is genuinely out of circulation.

Handing codes to a team without handing over everything

Three people need to create codes, one needs to read the numbers, and none of them should be able to change billing or revoke API keys.

  1. Invite each person by email from the Members screen.
  2. Assign Editor to the people making codes and Viewer to the person reading analytics.
  3. Check the permission matrix under Roles — enforcement is server-side, not just hidden buttons.
  4. Keep separate workspaces for separate clients, each with its own members and keys.

Keeping two hundred codes findable a year later

Six months of ad-hoc codes named "final" and "final-v2". Nobody can tell which one is on the poster in the lobby.

  1. Create folders for the things you organise by — campaign, venue, client.
  2. Tag codes across folders for the things that cut sideways, like "print" or "2026".
  3. Filter the list by folder, tag, type, mode or status to narrow a large set fast.
  4. Rename folders and tags freely — every code carrying them updates, and nothing is deleted.
FAQ

Use case questions

What is the fastest way to test this with my own data?
Create a free account, make one dynamic code, print it on anything, then change the destination and rescan. That loop takes about two minutes and is the whole product in miniature.
Can I try bulk generation before committing?
Yes. Bulk mode runs entirely in the browser — paste a list or drop a CSV and you get real, downloadable codes. Saving the batch into your workspace is what counts against a plan.
How many codes can one CSV create?
Up to 10,000 rows per upload, one code per row. The first column is used as the destination and a header row is detected automatically, so an export from a spreadsheet usually works unedited.
Can I change a whole batch of destinations at once?
Yes — select the codes in the list, or filter to a folder, and update them together. The printed patterns are untouched, because the pattern never encoded the destination in the first place.
Does re-pointing a code reset its scan history?
No. The history belongs to the code, not the destination, so you can see exactly when traffic shifted from the old target to the new one.

Pick a workflow and run it today

Free plan, no credit card. Unlimited static codes forever, and three dynamic ones so you can watch re-pointing work before you pay for it.

24 content types · Static & dynamic · PNG & SVG · Free forever plan