QRAnalytica

How Do I Make a Separate QR Code for Every Table in My Restaurant?

To make a separate QR code for each restaurant table, give every table its own link or code name, generate the codes in one batch, then label and test.

Nookesh Karri · 9 min read
Dark cover card with the title 'How Do I Make a Separate QR Code for Every Table in My Restaurant?' in white and a lime accent bar

To make a separate QR code for each restaurant table, give every table its own identifier, then generate one code per identifier in a single batch. If guests order from the table, your POS or ordering platform creates the codes, because it has to know the table. If the codes only open a menu, a spreadsheet and a bulk QR code generator do the job.

Do you need a separate QR code for each restaurant table?

You need a separate QR code for each restaurant table when something has to know which table the scan came from. That is always true for ordering and optional for a menu.

Ordering is the strict case. Petpooja’s QR ordering guide explains that “each code is tied to a specific table number so the system knows which table placed the order.” It also warns that “printing the same generic QR code for every table breaks the table-mapping and the running-bill logic.”

For a menu, one code copied onto every table opens it just as well. Separate codes earn their keep only if you want to see which tables or zones scan most.

Where the table number lives in a QR code

A table QR code carries its table in one of two places: inside the link, or in the name of the code in your dashboard. Which one you need depends on who reads it.

Your setupWhere the table goesWho makes the codes
Guests order and pay from the tableInside the link, in the format your ordering system expectsThe POS or ordering platform
Menu on your own website, and you want table data in Google AnalyticsInside the link, as a UTM tagYou, with a QR generator
Menu only, and you want scan counts per tableIn the code’s name. Every code points at the same menu linkYou, with a dynamic QR generator

You can’t fake the first row. Take App’s help page attaches the table through a tableId value in each link, so “the order carries the table as its own field.” Only the platform knows which value belongs to which table.

Making table codes in a POS or ordering platform

Most ordering platforms make the codes for you once your tables exist in the system. You add the tables, press a generate button, and download a file per table.

Toast’s Mobile Order & Pay guide says “each QR code is linked to a table, so you must create at least one service area and table to complete this step.” Choose Download QR codes “to get unique QR codes for each table selected.” Clean up table names before you do: Toast notes that “tables with duplicate names cannot be assigned a QR code” and tells you to “rename affected tables before generating signs.”

Fleksa’s table QR docs say “the system creates a unique QR code for each table” that includes “the specific table number.” In Take App you “add as many tables as you need, then download the QR code for each one.” That feature was in beta when I checked.

Other options are compared in where to get QR codes for restaurant tables.

Making table codes with a spreadsheet and a QR generator

If your system doesn’t generate table codes, or the codes only open a menu, build the list in a spreadsheet and generate the batch in one go. Each row becomes one code.

  1. List every table. Use the numbers your staff already say out loud.
  2. Name each one. Keep it short and sortable: main-t01, main-t02, patio-t01. Zero-pad the numbers so they sort properly.
  3. Set the link. Either the same menu link in every row, or the menu link with a table tag on the end.
  4. Save as CSV and upload it to a bulk generator.
  5. Download the codes as print files.

A list for a small café might look like this:

NameLink
main-t01https://example.com/menu?utm_source=table&utm_medium=qr&utm_campaign=dine_in&utm_content=main-t01
main-t02https://example.com/menu?utm_source=table&utm_medium=qr&utm_campaign=dine_in&utm_content=main-t02
patio-t01https://example.com/menu?utm_source=table&utm_medium=qr&utm_campaign=dine_in&utm_content=patio-t01

Type the first row and build the rest with a formula that joins the base link to the name column. Nobody should type these by hand.

The bulk QR code generator takes a file like this, and the bulk QR code generation guide covers the column format. On QRAnalytica, bulk CSV is part of the Pro plan at $39/month, which allows 50 codes. Starter allows 20 and Business 250, so count your tables before you pick.

UTM tags let Google Analytics tell tables apart when the menu sits on your own website. The table name goes in utm_content, which Google’s URL builder page says to “use to differentiate creatives.”

Google adds that “you should always use utm_source, utm_medium, and utm_campaign,” so fill in all three and keep them identical on every table. Watch the capitals too: “Parameter values are case sensitive, e.g. utm_source=google is different from utm_source=Google.” If Patio-T01 and patio-t01 both exist, they show up as two tables.

There’s more on tagging in UTM parameters for QR codes. Skip this step if your menu is a PDF or lives on a platform you can’t add analytics to.

Static or dynamic codes for tables

Both work, and the trade-off is whether you can change the link after printing. A static code holds the full link, so each table’s code differs because each link differs. It needs no account and never depends on a service. A new menu address means reprinting every table.

A dynamic code holds a short redirect link, and each code counts its own scans. With QRAnalytica you can change the target URL at any time without reprinting, and each code shows hourly scan counts. Dynamic vs static QR codes goes deeper.

What breaks printed table codes later

Printed table codes break when the thing they point to gets renamed.

Start with table numbers. Fleksa says “QR codes remain valid as long as the table exists,” and lists renaming or renumbering tables as a reason to regenerate. “Existing QR codes for unchanged tables continue to work.”

A changed web address is worse. Toast warns that changing its ordering URL “will also break all existing Toast Mobile Order & Pay QR codes,” and “you will need to configure and generate new QR codes again.” Slerp builds its ordering link from the location name, and its help page says that after a rename “the old QR codes will stop working because they still point to the old URL (there is no redirect).”

Settle your table numbers and your web address before you print. Petpooja’s rule of thumb is that “you only need to reprint codes if you change your table layout or floor plan.”

Label, print and test every table code

Every printed code needs its table name in small text beside it, and every code needs one test scan before service. Unlabelled codes all look the same, and a tent that wanders from table 4 to table 7 sends orders to the wrong place.

Scan each code at its own table and check the right menu or ordering page opens. For ordering codes, place a test order and confirm the ticket shows the right table. For tracked codes, check the scan appears under the right name; how to track restaurant QR menu scans by table shows how to read the results.

My take: fewer codes, clearer names

Make a code per table only where the table matters. For ordering, that’s every table. For a menu, start with zones such as main room, patio and bar. Three or four codes are easier to print, replace and read in a report than thirty, and zones answer most questions an owner actually asks.

The limitation: a generator-made code can only carry a table in its link. It can’t make your ordering system understand it, so if orders must land on a table, the codes have to come from that system. Dynamic codes also run through QRAnalytica’s redirect servers, a dependency a static code doesn’t have.

FAQ

Do I need a different QR code for each table?

Only if you need to know which table scanned or ordered. Table ordering needs it, because the code tells the system where the food goes. A menu-only code can be the same on every table, but then you can’t compare tables.

Can I use one QR code for all tables?

Yes, for a menu that guests only read. For ordering it causes trouble. Petpooja’s guide says printing the same generic QR code for every table breaks the table-mapping and the running-bill logic.

What happens to table QR codes if I renumber my tables?

Codes for the changed tables usually need regenerating. Fleksa’s docs say codes stay valid as long as the table exists and that unchanged tables keep working, so renumber as few tables as you can.

How do I make table QR codes without a POS?

List your tables in a spreadsheet, give each one a short name and its own link, and run the list through a bulk QR code generator. Print the table name under each code so they don’t get mixed up.

Sources

Track your dynamic campaigns. 7-day trial, no credit card.
Generate Dynamic QR