# How to Make a QR Code for Google Reviews (and Track the Scans)

Source: https://lots.link/blog/qr-code-for-google-reviews
Published: 2026-10-28T00:30:32.480616+00:00

To make a QR code for Google reviews, copy your review link from your Business Profile (Read reviews, then Get more reviews), shorten it with LotsLink, and make a QR code from the short link. Print it where customers finish a visit. Because the code points at a short link, you can read how many times it was scanned, and you can change where it goes later without reprinting.

Google gives you its own review link and QR code for free, and that is enough if you only need to hand out a code. The reason to put LotsLink in the middle is the two things Google's help page doesn't describe: scan numbers, and a destination you can change after the code is printed.

I ran the whole flow on 27 October 2026 through the LotsLink MCP server, on a fictional cafe with a made-up place ID, and the real output is below.

## Step 1: Get your Google review link

Google's own steps, from its [Create a Google link or QR code to request reviews](https://support.google.com/business/answer/16816815) help page (opened on 27 October 2026):

1. Go to your Business Profile.
2. Select **Read reviews**, then **Get more reviews**.
3. Select **Copy** to copy the review link. Google shows its own QR code there too.

Google notes that review QR codes can only be generated in a computer browser, not on mobile devices, and that customers must be signed in to a Google Account to leave a review. Keep the copied link: it's the destination for your short link.

### What Google allows when you ask for reviews

Asking is fine, and Google suggests putting the link or QR code on receipts, in thank-you emails, at the end of a chat and on a printed code in your store. The rules sit in the same help page and in Google's [Maps user generated content policy](https://support.google.com/contributionpolicy/answer/7400114) (both opened on 27 October 2026). In plain words:

- **No incentives.** Don't offer payment, discounts or free goods or services in exchange for a review, or for changing or removing one.
- **No review gating.** Don't discourage negative reviews, and don't selectively ask only the customers you expect to be positive. Send the same request to everyone.
- **No pressure.** Google says merchants shouldn't require or pressure people to leave reviews while on the premises, and shouldn't ask for specific content or a set number of reviews from staff.

So the sign next to your code can say "Tell us how we did", and it shouldn't say "Leave 5 stars for a free coffee".

## Step 2: Shorten it with LotsLink

A raw review link is long, and a code made from it is dense and hard to scan from a table. A short link makes a simpler code, and it's what gives you the numbers and the edit later.

In the [LotsLink dashboard](https://lots.link/dashboard), paste your review link into the short link form and select **Create Short Link**. Or ask your agent. LotsLink works with the AI agent you already use: connect it once from [lots.link/mcp](https://lots.link/mcp) and the dashboard does the same job. My prompt:

> In my LotsTech workspace, create a short link to this review link: https://search.google.com/local/writereview?placeid=EXAMPLE_PLACE_ID_FICTIONAL. Use the custom slug `google-review-demo`.

The agent called `lotslink_create_link` and Google's name stopped it:

```json
{
  "success": false,
  "error": {
    "code": "SLUG_NOT_ALLOWED",
    "message": "This custom slug contains a word that is blocked to prevent phishing, such as a brand name or \"verify\". Choose a different slug.",
    "details": { "blocked_word": "google" }
  }
}
```

That's worth knowing before you print anything: a custom slug can't contain a brand name, so `google-review` is out, and it has to be 7 to 40 letters, numbers, hyphens or underscores. I asked again with `review-us-sample-cafe`:

```json
{
  "success": true,
  "short_url": "https://lots.link/review-us-sample-cafe",
  "link": {
    "original_url": "https://search.google.com/local/writereview?placeid=EXAMPLE_PLACE_ID_FICTIONAL",
    "custom_slug": "review-us-sample-cafe",
    "click_count": 0,
    "is_active": true
  }
}
```

On lots.link the link is free. If you want your own domain in the link, such as `go.yourcafe.com/review`, a custom domain is the one paid part: checked on 27 October 2026, plans start at $9 a month for 3 custom domains, and the [pricing page](https://lots.link/pricing) has the rest. Links, QR codes and clicks are free and unlimited, up to 1,000 new links per person in any 24 hours.

## Step 3: Make the QR code

In the dashboard, open **QR Codes**, choose your link under **Select Link**, select **Generate QR Code**, then select **Download** to save the PNG. From your agent, `lotslink_create_qr_code` takes the link id and a size from 150 to 1024 pixels (512 if you don't say). For print, I asked for the largest:

> Make a QR code for that link, 1024 pixels.

```json
{
  "success": true,
  "short_url": "https://lots.link/review-us-sample-cafe",
  "qr_code_url": "https://media.lots.link/qr-codes/.../...-qr-75bd0a60-....png",
  "format": "png",
  "size": 1024,
  "foreground_color": "#000000",
  "background_color": "#FFFFFF"
}
```

I downloaded the PNG, it came out at 1024 by 1024, and decoding it returned `https://lots.link/review-us-sample-cafe`, so the code opens the short link and not Google directly. That's what makes the scans countable. You can set `foreground_color` and `background_color` as hex values; keep strong contrast so phones can scan it. Calling the tool again makes a new image and replaces the saved one.

### Print tips

These are practical habits, not LotsLink rules:

- **Print from the 1024 px file** and scale it down. A small PNG scaled up goes soft.
- **Keep a white border around the code** and don't crop it. Dark code on a light background scans best; avoid putting it over a photo.
- **Make it big enough to scan from where people stand.** On a table card, about the size of a coaster is comfortable. On a counter or wall, bigger.
- **Put one line of words beside it:** "Scan to review us on Google". People scan what they understand.
- **Put it where the visit ends:** the receipt, the table card, the bag, the thank-you email. Don't make people wait for it.
- **Scan the printed proof with two different phones** before you order a hundred.

## Step 4: Read the scans

A scan opens the short link, and LotsLink records it as a click with the time, approximate location, device type and referrer. LotsLink doesn't store visitor IP addresses, so there's no unique-visitor count: you're reading recorded clicks, not people.

One rule matters when you test it. A repeat visit by the same visitor to the same link within 10 seconds counts once. If you scan your own code twice in a row to check it, you'll see one click. My run shows it. I requested the short link the way a phone browser does, from the terminal with a mobile user agent:

| Request | What came back | Recorded? |
|---|---|---|
| First request | `307` to the review page | Yes |
| Second request, straight after | `307` to the review page | No: same visit within 10 seconds |
| Third request, 12 seconds later | `307` to the review page | Yes |

Then I asked: "Show me clicks for the review link in the last 7 days." The agent called `lotslink_get_link_analytics` with `days: 7`, and the answer, trimmed:

```json
{
  "metrics": { "totalClicks": 2, "clicksInPeriod": 2, "avgClicksPerDay": 0.29,
               "peakDay": { "date": "2026-10-27", "clicks": 2 } },
  "geography": { "countries": [{ "country": "US", "clicks": 2 }] },
  "devices": { "desktop": 0, "mobile": 2, "tablet": 0, "unknown": 0 },
  "referrers": { "top": [{ "referrer": "direct", "clicks": 2 }] },
  "timeline": [{ "date": "2026-10-27", "clicks": 2 }],
  "destination_changes": []
}
```

Three requests, two recorded clicks, from a mobile device with no referrer. The location is where my connection sits, and country and city are approximate and can be missing. Bots, link previews and prefetches aren't counted.

**What the number means.** A recorded click is someone opening the link, not someone posting a review. Customers have to be signed in to Google, and some will stop there. Read scans next to the review count in your Business Profile, and judge the sign and the placement by how the two move together over weeks. The `days` setting goes up to 365, and click-by-click records and CSV or JSON export are available too. I cover reading scans in more depth in [how to track QR code scans](https://lots.link/blog/track-qr-code-scans).

## Change where the code goes, without reprinting

This is what a dynamic QR code gets you. The code holds the short link, and the short link holds the destination, which you can change. Say you move premises, open a second location, or Google gives you a different review link. I changed the fictional destination to a second made-up place ID:

> Change that link's destination to https://search.google.com/local/writereview?placeid=EXAMPLE_PLACE_ID_FICTIONAL_NEW_LOCATION. Keep the same short link.

The agent called `lotslink_update_link` with `original_url`:

```json
{
  "success": true,
  "short_url": "https://lots.link/review-us-sample-cafe",
  "destination_changed": true,
  "redirect_cache": "purged",
  "message": "Destination updated. The short URL and QR code stay the same."
}
```

I requested the short link straight afterwards and it returned a `307` to the new destination. The edit reaches visitors at once, and the printed code didn't change. In the dashboard, open **All Links**, open the link's row menu, select **Edit Link** and change **Destination URL**. LotsLink also records when a destination changed (`destination_changes` on `lotslink_get_link`). Don't change the slug, though: that changes the short URL, and a printed code that uses the old one stops working.

The difference between code types is in [dynamic vs static QR codes](https://lots.link/blog/dynamic-vs-static-qr-codes), and the full edit flow is in [how to change a QR code's link after printing](https://lots.link/blog/change-qr-code-link-after-printing). If you're choosing a generator, [the best QR code generators with tracking](https://lots.link/blog/best-qr-code-generators-with-tracking) compares seven, and [lots.link/free-qr-code-generator](https://lots.link/free-qr-code-generator) is the plain version of this page.

### Clean up after a test

I switched the demo link off when I was done. With `is_active: false` it answers visitors with `410 Gone` ("This link has been disabled by its owner."), and `is_active: true` brings it back. Leave a real, printed link switched on.

## FAQ

### Can I make a QR code for Google reviews for free?
Yes. Google creates a review link and QR code for you in your Business Profile at no charge, on a computer browser. LotsLink is free too: short links, QR codes and click analytics are unlimited and cost nothing, and a paid plan only matters if you want your own domain in the link.

### Where do I find my Google review link?
In your Business Profile, select Read reviews, then Get more reviews, then Copy. Google's help page says QR codes can only be generated on a computer browser. Customers must be signed in to a Google Account to leave a review.

### Can I give customers a discount for leaving a review?
No. Google's policies prohibit offering payment, discounts or free goods or services in exchange for reviews, and they don't allow selectively asking only customers you expect to be positive. Ask everyone the same way, and don't pressure people to review on the premises.

### Does a scan count mean a review?
No. LotsLink counts recorded clicks, not people, and a click doesn't mean a review was posted. A repeat visit within 10 seconds counts once, and LotsLink doesn't store visitor IP addresses. Compare scans with the new reviews in your Business Profile.

### Can I change where the QR code points after it's printed?
Yes. The code opens a LotsLink short link, and you can change that link's destination from the dashboard or your AI agent. The short URL and the printed code stay the same, and the change reaches visitors at once.

### What size should the QR code be?
LotsLink makes PNG codes from 150 to 1024 pixels wide, 512 by default. Download the 1024 pixel file for print and scale it down, keep a white border around it, and scan a printed proof with more than one phone before you print a batch.
