Practical guide
How to generate a QR code and test it before sharing
A QR code on a business card, poster or guest-network card should deliver the intended content, not merely look correct. This guide takes you from choosing a mode to reading the exported file on a phone. Examples are demonstrations: replace them with your own checked data before sharing.
Choose what the recipient should read
Open the generator and choose a link, text, Wi-Fi, phone or contact. Each mode prepares different content: a website address is not a contact card, and plain password text does not initiate a network connection. Start with the action you expect after scanning rather than putting everything in text mode.
The code is static: it contains data without a generator-owned redirect. There is no account for editing an already printed payload or viewing scan statistics. A changed password or number requires a new image; an unchanged website URL can serve updated page content, but its availability depends on the site owner.
Prepare a link or text without unnecessary data
For a link, enter a complete http:// or https:// address without embedded login credentials. The tool checks syntax and normalizes the URL but does not open the site, assess its safety or confirm availability. Check the destination yourself first; use neutral https://example.com/ for practice.
Text mode preserves spaces and line breaks as data. The complete payload is limited to 1000 UTF-8 bytes, not 1000 letters: Polish accented characters and emoji can use more than one byte. This is an application limit, not the QR standard’s capacity. Shorter content helps keep the symbol manageable.
| Mode | Input | Encoded content |
|---|---|---|
| Link | https://example.com/ | https://example.com/ |
| Text | Zażółć | Zażółć |
| Phone | +48 123 456 789 | tel:+48123456789 |
Source: node-qrcode — encoding, UTF-8 and error-correction documentation.
Share Wi-Fi deliberately, preferably a guest network
Copy the exact SSID, choose WPA/WPA2 Personal or an open network, and set whether the network is hidden. The name has a 32-byte UTF-8 limit. The generator escapes characters such as semicolons and backslashes in the payload; do not remove them from the actual name or password merely to simplify entry.
The example uses SSID Gosc, password Guest-2026! and a visible network. The password is demonstrative, not recommended. A masked input does not encrypt the code: anyone obtaining the image can read it. Open-network mode omits the password; the WPA field’s 128-character cap does not validate router requirements. The tool does not configure Enterprise networks or test connectivity.
| Variant | Payload |
|---|---|
| WPA / Gosc / Guest-2026! | WIFI:T:WPA;S:Gosc;P:Guest-2026!;H:false;; |
| Open / Gosc | WIFI:T:nopass;S:Gosc;H:false;; |
Source: ZXing — URL, phone, Wi-Fi and vCard content formats.
Check phone numbers and contact import
Enter a phone number with a plus and country code, such as +48 123 456 789. The tool removes ordinary spaces, parentheses and hyphens, then requires 7–15 digits. The resulting tel:+48123456789 describes a phone action but does not confirm the number’s existence or owner. Do not call the demonstration number to test this guide.
Contact mode creates vCard 3.0: a name is required, while phone, email and website are optional. The complete name goes into one N component and FN, without splitting first and last names. Inspect the proposed import after scanning; field layout and Polish-character support can depend on the reader. Include only data you actually intend to share.
Source: ZXing — URL, phone, Wi-Fi and vCard content formats; IETF RFC 2426 — vCard 3.0 contact format.
Choose correction and download the right file
Choose M, Q or H, then generate the code. Higher correction can increase the matrix size; it does not replace testing, good contrast or adequate printed size. Do not overlay a logo on the modules. The generator chooses version and mask automatically, preserving a four-module white margin on every side.
SVG preserves geometry when resized; PNG is a raster image that can blur when enlarged too far. Keep square proportions and the white margin, including after placing the file in a design. There is no single guaranteed size in centimetres for every payload, printer and scanning distance. Test the final composition, not only the preview.
Source: DENSO WAVE — four-module QR quiet zone; node-qrcode — encoding, UTF-8 and error-correction documentation.
Test before publication
Scan the downloaded file with another device, compare the decoded content with the form and check the intended action. For print, make a sample on the intended material at actual size and lighting. For Wi-Fi, test a guest device’s connection; for contacts, inspect names and fields before saving the card.
If a reader misses the action or Polish characters, try another reader and shorter content. Editing a field or resetting removes the previous result and download links: generate again and remove the old file from your design. The code does not expire because of the generator, but its link, network or contact data can stop working. The destination website may have its own analytics.
Source: node-qrcode — encoding, UTF-8 and error-correction documentation.
Frequently asked questions
Can I edit a printed QR code?
You cannot change the data inside a static image. Generate a new code when a number or password changes. If the code contains an unchanged website URL, that page’s content can be updated without changing the code, provided you still control the address.
Does a Wi-Fi code hide the password?
No. Only the input field is masked. The password is readable within the QR payload, so treat the image as shared access credentials. Consider a separate guest network and test its permissions and actual connectivity.
Why can a short text exceed the limit?
The limit covers 1000 UTF-8 bytes of the complete payload, including Wi-Fi or vCard framing. Accented letters and emoji use more bytes than simple ASCII. Shorten the data rather than removing the code’s margin or corrupting contact details.
Are entered data saved or sent to analytics?
Content and images are generated locally. Form data are not added to the URL, localStorage, sessionStorage or analytics. Downloads, copying and printing are deliberate actions. A page visit still makes a normal hosting request; protect exported files and your clipboard too.
Sources and scope
This guide covers static QR codes, not encryption, website-security auditing or confirmation that a network or phone number works. Anyone scanning can read the encoded data. Examples are not real contact details or a recommendation to use the sample password. Always test the final file and device.
Tools covered by this guide
QR code generator
Create static QR codes for links, text, Wi-Fi, phone numbers and contact cards. Download SVG or PNG.
Barcode generator
Create EAN-13 or Code 128 barcodes. Check the check digit and download a black-and-white SVG or PNG.