A Google Form is the fastest way to collect anything — a sign-up, a survey, an RSVP, feedback at the door — and a QR code is the fastest way to get people into it. Nobody types docs.google.com/forms/d/e/1FAIpQLSd… from a poster. They point a camera at a square, the form opens, they answer. The whole setup takes two minutes and costs nothing, and most of the ways it goes wrong have nothing to do with the code: the wrong link was encoded, the form was never published, or a setting made every respondent sign in first.
This guide covers which of a Google Form's several links belongs in the code, how to make the code free, the form settings that quietly break it, how to keep one printed code working across a form you replace every season, and how big to print it. The sizes are computed with the same QR library the generator uses, so the numbers are real modules and millimetres rather than a rule of thumb.
Which link to encodeA form has three, and only two belong in a code
The editor link — never
docs.google.com/forms/d/<id>/edit is the URL in your address bar while you build the form. Encode it and every scanner is asked to request edit access, or sees the editor if they happen to be a collaborator. It is the commonest mistake, because it is the link you have open.
The responder link — yes, it is the real address
docs.google.com/forms/d/e/<56-character id>/viewform, about 99 characters. It is what Google gives you from Publish → Copy responder link. It never changes for the life of the form and it works in any generator.
The short responder link — yes, and it makes a smaller code
Tick Shorten URL before copying and Google gives you forms.gle/<17 characters>, about 35 in total. It is a redirect to the same responder link, permanent for as long as the form exists, and it produces a QR code three versions smaller — the difference between a 41×41 grid and a 29×29 one.
A pre-filled link — yes, when you want to know where the scan came from
More (⋮) → Pre-fill form lets you fill an answer in advance and get a link that carries it. Put a 'Where did you find us?' short-answer question in the form, pre-fill it with 'Table 12' or 'Lobby poster', and each printed code reports its own location in the responses — no tracker needed. The link is long, about 160 characters, and the code grows accordingly.
Two things Google's link does not care about: whether the person scanning has a Google account (a plain form is open to anyone with the link) and which device they use — the responder page is mobile-first. What it does care about is the state of the form, which is the next section but one.
Make it in two minutesFree, no account, PNG or SVG
Publish the form and copy the short responder link
In Google Forms click Publish (top right), then Published → Copy responder link, with Shorten URL ticked. Older forms show the same options behind Send → the link icon. Paste the link into a browser tab first: it should open the form, not the editor.
Paste it into the generator
Open the QR Code Generator with the URL type selected and paste the link. The preview updates as you type; scan it from the screen with your phone before you do anything else.
Style it, within limits
A brand colour, rounded modules and a small logo in the centre are fine. Keep the code darker than its background and leave a clear margin around it; if you add a logo, set error correction to High, which is what lets the code lose the covered squares and still read.
Download SVG for print, PNG for screens
SVG scales to a banner without blurring; PNG at the generator's default size is right for a slide, an email or a social post. Nothing is uploaded — the image is built in your browser — and the code has no account or expiry attached to it.
Test it on paper, on two phones
Print one copy at the intended size and scan it with an iPhone and an Android phone using the built-in camera. Both should show a preview of the forms.gle link and open the form. Then print the run.
If you only need the code once and have the form open in Chrome, the browser can make a plain one: click the share icon in the address bar and choose Create QR code, then download the PNG. It encodes whatever URL is in the bar — so switch to the responder link first, and expect a black-and-white code with no options. For anything printed and reused, the generator's file is the one to keep.
Settings that break a scanned formThe form, not the code, is usually the problem
A QR code fails loudly: the phone shows nothing. A Google Form fails politely: the phone opens a page, and the page says no. These are the settings that produce that page, in the order people hit them.
Not published
Since late 2024 a new form is a draft until you click Publish. The responder link exists before that, and it opens a page saying the form is not accepting responses. Publish first, then copy the link.
'Accepting responses' switched off
The toggle on the Responses tab. Off, every scan reaches 'This form is no longer accepting responses' plus whatever message you typed there. Fine when the event is over — write a useful message — fatal when it was switched off by accident.
'Limit to 1 response' or 'Collect email addresses' set to verified
Both require the respondent to sign in to a Google account. On a personal phone that is one tap; on a shared tablet at reception, a guest's phone or an iPhone without the Google app it is a login wall, and a share of scanners will give up. Use them only when you need them, and say 'sign-in required' beside the code if you do.
A file-upload question
File uploads force sign-in for everyone and are unavailable on some organisational forms. If a photo is optional, make it a separate form or a follow-up email.
Restricted to your organisation
Google Workspace forms can be limited to people in the same domain. A code on a public poster then serves a permission-denied page to the public. Check Settings → Responses → 'Restrict to users in …' before the poster goes to print.
The form was deleted or moved to the bin
The link 404s and the code with it. A bin restore brings both back. If the survey is genuinely over, do not delete the form — close it and write the message, so the code on the leftover flyers still says something sensible.
Static or dynamicWhen the form will change
Encode the forms.gle link directly
The right choice for a form with one life: an event RSVP, a one-off survey, a class sign-up. Free, no account, cannot expire, and the code keeps working for as long as the form exists — which, if you close rather than delete it, is indefinitely. Edit the questions all you like; the link does not change.
Encode a short redirect you control
The right choice for a printed code that outlives any one form: the feedback card on every table, the 'join our list' sticker, the safety-check form on the wall. A dynamic code points at a short link on our tracker that you can repoint to next season's form without reprinting — and it counts every scan.
The dynamic version has a second use that is easy to miss. Google Forms tells you how many responses came in; the QR Codes Tracker tells you how many scans happened, with the day and the device. Fifty scans and eleven responses is a form that is too long, or a sign-in wall, or a poster in a place where people have no time — a number you cannot get from the form alone. The free plan keeps one dynamic code; the static route needs no account at all. Our guide to free QR codes that do not expire covers the choice in full, and the expiry guide is the reference for what actually stops a code from working — the deleted form is on the list.
Tagging the source without a trackerOne pre-filled link per place
If you want to know which poster or table a response came from and do not want a dynamic code, Google's pre-filled links do it with no account. Add a short-answer question — "Where did you see this?" — then pre-fill it once per location.
https://docs.google.com/forms/d/e/<id>/viewform…/viewform?usp=pp_url&entry.1234567890=Table+12…/viewform?usp=pp_url&entry.1234567890=Table+12&entry.2076543210=EveningMore (⋮) → Pre-fill form → type the answer → Get link → Copy linkEach location gets its own code, and the responses sheet gains a column that fills itself. The costs are honesty and size: the respondent can see and change the pre-filled answer (put the question last and mark it optional), and the link is long — 160 characters for two fields — so the code needs about 24 mm at minimum instead of 15. For more than a handful of locations, a dynamic code per location is less work and gives the scan count as well.
How big to printSizes for the four links
The size of a QR code's grid is set by how many characters it holds and its error-correction level; the minimum print size follows from the grid at 0.4 mm per module, the same rule our other QR guides use for a phone at arm's length.
forms.gle short link
- Characters
- 35
- Level M · min print
- 29×29 · 14.8 mm
- Level H (logo) · min print
- 37×37 · 18.0 mm
Dynamic code (calculatorai.app/qr/…)
- Characters
- 35
- Level M · min print
- 29×29 · 14.8 mm
- Level H (logo) · min print
- 37×37 · 18.0 mm
Full responder link
- Characters
- 99
- Level M · min print
- 41×41 · 19.6 mm
- Level H (logo) · min print
- 57×57 · 26.0 mm
Pre-filled link, two fields
- Characters
- 161
- Level M · min print
- 53×53 · 24.4 mm
- Level H (logo) · min print
- 69×69 · 30.8 mm
| Link | Characters | Level M · min print | Level H (logo) · min print |
|---|---|---|---|
| forms.gle short link | 35 | 29×29 · 14.8 mm | 37×37 · 18.0 mm |
| Dynamic code (calculatorai.app/qr/…) | 35 | 29×29 · 14.8 mm | 37×37 · 18.0 mm |
| Full responder link | 99 | 41×41 · 19.6 mm | 57×57 · 26.0 mm |
| Pre-filled link, two fields | 161 | 53×53 · 24.4 mm | 69×69 · 30.8 mm |
Source: CalculatorAI · calculatorai.app · drafts/qr-code-for-google-form-numbers.mjs, using the same qrcode library as the generator
Those are minimums for a phone held close. In practice: 3 cm on a flyer, table card or name badge; 5 cm on a wall or a door; and about a tenth of the scanning distance for anything larger — a lobby poster read from two metres wants a 20 cm code. The short link is worth the extra click for exactly this reason: on a business-card-sized handout, the difference between a 15 mm and a 20 mm minimum is the difference between a code that scans on the first try and one that does not. The Wi-Fi code guide has the same table for network credentials, and the restaurant menu guide for a table tent, which is where a feedback form usually ends up living.
Where these numbers come from
Link lengths use a real forms.gle short link (18-character prefix plus a 17-character id) and a responder link with the standard 56-character /d/e/ form id, with ?usp=pp_url and two entry. parameters for the pre-filled case; the ids are placeholders of the right length, not a live form. Grid sizes and minimum print sizes were computed in drafts/qr-code-for-google-form-numbers.mjs with the same qrcode library the CalculatorAI generator uses, at error-correction levels M and H, taking the print size as (modules + 8) × 0.4 mm — the 8 being the four-module quiet zone on each side — consistent with our earlier QR guides; the "tenth of the viewing distance" rule is the usual print guideline rather than a measurement. Google Forms behaviour — Publish and Copy responder link, the Shorten URL option, Pre-fill form, Accepting responses, the sign-in requirements of response limits, verified email collection and file uploads, and organisation restrictions — is described from Google's Docs Editors help pages and the current Forms interface in September 2026; labels differ slightly between the new and legacy editors. Chrome's Create QR code option is described from the browser's share menu. No third-party QR service's behaviour is described.
Frequently asked questions
Does Google Forms have a built-in QR code generator? No. Forms gives you a link (long or shortened to forms.gle) and an embed code, but no QR image. Paste the link into any generator; Chrome's share menu can also draw a plain black-and-white code for whatever page is open.
Which Google Form link should I put in the QR code? The responder link — the one from Publish → Copy responder link — ideally with Shorten URL ticked so it becomes forms.gle/…. Never the /edit link from your address bar, which asks scanners for edit access.
Does a Google Form QR code expire? The code itself does not; a static code holds the link forever. It stops working only if the form is deleted, unpublished or switched to not accepting responses — and closing the form with a message is the graceful way to retire a printed code.
Do people need a Google account to answer a form from a QR code? Not by default. Sign-in is forced only by 'Limit to 1 response', by collecting verified email addresses, by a file-upload question, or by a Workspace form restricted to one organisation. Each of those costs you a share of scanners on shared or borrowed devices.
Can I see how many people scanned the code, not just how many answered? Only with a dynamic code. Google Forms counts responses; a dynamic code on the QR Codes Tracker counts scans by day and device, and the gap between the two numbers is your completion rate. A pre-filled link can tag where a response came from without a tracker, but it cannot count the scans that never became responses.






