Miks suvaline QR-generaator võib olla ohtlik
Mõned aastad tagasi oli mul klient, kelle tootepakendil oli QR-kood nende retseptiraamatusse. Eelmine kujundaja oli teinud koodi online-generaatoriga, mis pakkus tasuta prooviperioodi koodide loomiseks. Kujunduse kinnitamisel testisid nii kujundaja kui tellija koodi telefoniga skannides, kõik töötas ja pakendid läksid trükki. 30 päeva hiljem lakkas QR-kood töötamast: generaator oli pannud koodi sisse oma edasisuunamisteenuse lingi, mitte otse kliendi aadressi, ja tasuta prooviperioodi lõppedes lülitas suunamise välja. Uus trükk oleks olnud kallis, nii et kliendil ei jäänud muud üle kui hakata teenusele kuutasu maksma.

Testimine seda ei paljasta, sest prooviajal töötab kõik. Paljastab ainult see, kui vaatad, mis aadressi telefon skannimisel näitab. Kui see on generaatori domeen, mitte sinu enda aadress, on kood dünaamiline ja selle toimivuse kontroll on kellegi teise käes. Näiteks QR Code Generator kirjutab oma abilehel ise, et prooviajal tehtud dünaamilised koodid lülitatakse prooviaja lõpus välja.
Väldi selliseid teenuseid. Tegin kera.ee QR-koodi generaatori: see teeb staatilisi koode, mille sees on sinu enda aadress otse, ilma vahelülita. QR-kood ei aegu, genereerimiseks pole vaja kontot (ega kolme tilka verd).
Lühidalt:
- Tee trükisesse staatiline kood. Dünaamilise koodi toimivust kontrollib keegi teine.
- Koodi külg on umbes kümnendik skaneerimiskaugusest, aga mitte alla 2 cm. Mida lühem aadress, seda väiksemaks kood minna võib.
- Ümber koodi jäta 4 mooduli laiune vaba ääris. Tume kood heledal taustal, mitte vastupidi.
- Logo laius kuni viiendik koodi laiusest, veaparandus tasemel H.
- Trükifail vektorina, kood 100% mustaga (K). Enne trükki skanni paberit, mitte ekraani.
Kui suur peab QR-kood olema?
Rusikareegel: koodi külg on kümnendik skaneerimiskaugusest. Käes loetav flaier (20–30 cm) vajab 2–3 cm koodi, seinaplakat, mida loetakse kahe meetri kauguselt, vähemalt 20 cm koodi. Standardis seda reeglit ei ole, aga eri keeltes kirjutatud juhendid kordavad seda ühtemoodi.
Vähim mõõt ei sõltu aga ainult kaugusest, vaid ka sellest, kui palju andmeid koodis on. QR-kood koosneb ruudukestest ehk moodulitest. Väikseim tavaline QR-kood on 21 × 21 moodulit, suurim 177 × 177. Mida pikem aadress, seda rohkem mooduleid ja seda väiksemaks iga moodul sama trükimõõdu juures jääb.
Telefoniga skaneerimiseks peaks üks moodul olema trükisel vähemalt 0,4–0,5 mm. Soome pangad soovitavad oma blankettidel 0,5 mm moodulit ja väiksemat mitte. Seepärast on lühike aadress kujundajale kasulik: sama koodi saab trükkida väiksemana.
QR-koodi generaatoris on suuruse kalkulaator: sisesta skaneerimiskaugus ja trükimõõt ning see ütleb, kui suur tuleb üks moodul ja kas sellest piisab.
Vaba ääris, kontrast ja värv
Ümber koodi peab jääma vähemalt 4 mooduli laiune tühi ääris (inglise keeles quiet zone). Nii nõuab QR-koodi standard ISO/IEC 18004. Ääris aitab skanneril aru saada, kus kood algab. Kui ääris jääb kitsaks või kood on vastu pilti või teksti, ei loe osa telefone seda.
Tume kood heledal taustal. Värviline kood on lubatud, kui kontrast on piisav, aga kõik värvid ei sobi:
- Punane kood on riskantne. QR-koodi välja töötanud Denso Wave hoiatab, et paljud koodilugejad valgustavad koodi punase valgusega, mille käes punane kood on loetamatu. Telefon loeb punast koodi enamasti, kassa- või laoskanner ei pruugi.
- Kahvatukollane või helehall kood mõjub skannerile peaaegu nagu valge.
- Ümber pööratud värvidega kood (hele kood tumedal taustal) näeb hea välja, aga osa skannereid ei loe seda. Kui otsustad sellise disaini kasuks, testi mitme telefoniga.
Kumer pind on lubatud, sest kood talub väikest moonutust. Mida tugevam kumerus, näiteks väikesel pudelil, seda lühem peaks koodi sisu olema.
Logo QR-koodis
Arvesta, et logo tuleb alati veaparanduse arvelt. Igasse QR-koodi on kirjutatud lisaandmeid, mille abil saab kehvasti loetava, kaduma läinud või kaetud info taastada. Logo saab koodi panna just tänu sellele. Veaparandusel on neli taset:
| Tase | Taastab kuni | Kasuta |
|---|---|---|
| L | 7% | puhas keskkond, palju andmeid |
| M | 15% | tavaline valik |
| Q | 25% | kulumine, mustus |
| H | 30% | logo koodis |
Levinud müüt: „tasemel H võib logo katta 30% koodist“. Ei või. 30% on kogu vigade varu: sellest peab jätkuma ka kriimustustele, peegeldusele, kehvale trükile ja nurga alt pildistamisele. Kui logo võtab varu ära, ei jää ülejäänule midagi. Hoia logo laius kuni viiendik koodi laiusest, ära kata nurkades olevaid suuri ruute ja jäta logo ümber väike tühi ääris.
Kõrgem veaparandus teeb koodi ka tihedamaks: sama aadress vajab tasemel H rohkem mooduleid kui tasemel M. Logoga kood peab seega olema trükis pisut suurem.
Trükifail
- Vektor, mitte piksel. Kasuta SVG- või PDF-faili. PNG sobib trükki ainult siis, kui see on lõplikus mõõdus vähemalt 300 dpi.
- Must on 100% K. Ära tee koodi neljavärvimustast (rich black) ega RGB-mustast, mis trükis muutub CMYK-seguks. Kui trükiplaadid on vähegi nihkes, saavad moodulite servad värvilise ääre ja kontrast väheneb.
- Läbipaistev materjal vajab valget alust. Kleebisel või kilel trüki koodi alla valge kiht, muidu paistab läbi see, mis kleebise taga on.
- Testi paberil, mitte ekraanil. Tee proovitrükk päris suuruses ja skanni seda iPhone’i ja Androidiga, ka mõne vanema telefoniga, hämaras, läikiva valguse käes ja nurga alt.
Generaatori PDF-eksport teeb musta koodi automaatselt 100% K-ga.
Staatiline või dünaamiline kood?
Staatilises koodis on sinu aadress otse. Kood töötab seni, kuni aadress töötab, ja ükski teenus ei saa seda välja lülitada. Dünaamilises koodis on teenusepakkuja lühilink, mille sihtkohta saab hiljem muuta ja mille külastusi saab loendada. Dünaamiline kood on mõistlik, kui maksad teenuse eest teadlikult ja vajad statistikat või sihtkoha muutmist. Tasuta generaatori proovikoodi ei tasu trükisesse panna.
Ka staatiline kood töötab ainult seni, kuni aadress, kuhu see viib, alles on. Heinzi ketšupipudelitel Saksamaal oli QR-kood, mis viis kampaanialehele. Kampaania lõppes, domeen jäi uuendamata ja selle ostis täiskasvanute sisu sait. 2015. aastal avastas üks ostja, et pudeli kood viib pornolehele, ja Heinz pidi vabandama. Kui trükis jääb ringlusse aastateks, vali aadress, mille alles hoidmise eest saad ise vastutada.
Kujunda pettuse vastu
QR-koodiga petmist nimetatakse inglise keeles quishing: päris koodi peale kleebitakse võltskood või saadetakse kiri, kus petulink on peidetud QR-koodi sisse. Eestis on riik hoiatanud võltskleebiste eest parkimissiltidel ja võlts Parkimine.ee tagasimaksete eest. Oktoobris 2026 leiti koolitee äärest kleebiseid, mille QR-kood viis narkootikume müüvasse veebipoodi. Prantsusmaal Bergeracis võltsiti 2025. aastal korraga kõigi 40 parkimisautomaadi QR-koodid, Suurbritannias kaotati sel moel aastaga peaaegu 3,5 miljonit naela.
Inimene ei näe QR-koodile peale vaadates, kuhu see viib. Kujundaja saab aidata:
- Kirjuta koodi juurde, kuhu see viib, näiteks „kera.ee/kursused“. Siis saab lugeja kontrollida, kas telefon avab sama aadressi.
- Kirjuta, mida kood teeb: „vaata menüüd“, „registreeru koolitusele“. Kood ilma selgituseta õpetab inimesi skannima kõike.
- Ütle, mida kood ei tee. Hispaanias Alicantes on päris parkimistrahvil vöötkood, mitte QR-kood. Peterburis ei saa parkimissiltide QR-koodiga üldse maksta. Kui reegel on selge, on võltsingut lihtsam ära tunda.
- Avalikus kohas eelista koodi, mida on raske üle kleepida: klaasi taga või otse pinnale trükitud, mitte eraldi kleebisena.
Kuidas petukirju ja võltslinke ära tunda, loe postitusest Kuidas petukirja ära tunda või vaata küberturvalisuse e-koolitust.
Kuidas QR-kood sündis
QR-koodi töötas 1994. aastal välja Jaapani autoosade tootja Denso (selle osakonnast sai hiljem Denso Wave), et autotehastes osade liikumist kiiremini jälgida. Koodi töötas välja meeskond, mida juhtis insener Masahiro Hara.
- Kõige haruldasem kujund trükimaailmas. Nurkades olevad suured ruudud peavad olema äratuntavad igast suunast ega tohi segi minna ümbritseva trükiga. Hara meeskond uuris üle 5000 lehekülje ajalehti, ajakirju ja pappkaste ning otsis musta ja valge suhet, mida trükis peaaegu ei esine. Tulemus oli 1:1:3:1:1. Ruudu kuju valiti, sest seda kujundit leidus dokumentides kõige vähem.
- Go mäng andis lugemise viisi. Go-d mängides märkas Hara, et kivid, mis on ruudustikust veidi kõrvale nihkunud, loetakse ikka samaks mustriks. Sellest tuli mõte lugeda koodi „umbkaudu“, mis tegi lugemise kiireks. Sageli korratav väide, et QR-koodi ruudustik on Go-lauast, on liialdus.
- Patent, mida ei kasutatud. Denso patenteeris QR-koodi, aga otsustas patenti mitte jõustada, et kood leviks. Kaubamärgina kaitsti ainult sõna „QR Code“, mitte mustrit. Tänu sellele võib igaüks QR-koode tasuta teha.
Kontrollnimekiri enne trükki
- Skannimisel avaneb sinu enda aadress, mitte generaatori domeen. Kui avaneb generaatori aadress, on kood dünaamiline: veendu, et see on teadlik valik, mitte hooletus.
- Aadress on võimalikult lühike ja jääb alles nii kauaks, kui trükis ringlusse jääb.
- Koodi külg on vähemalt kümnendik skaneerimiskaugusest ja moodul vähemalt 0,4 mm.
- Ümber koodi on 4 mooduli laiune vaba ääris.
- Tume kood heledal taustal, kontrast piisav, mitte punane.
- Logo laius kuni viiendik koodi laiusest, veaparandus H.
- Vektorfail, must 100% K, mitte läbi nelja värvi.
- Koodi juures on lühike tekst: kuhu kood viib ja mida see teeb.
- Proovitrükk on skannitud mitme telefoniga.
Enamiku sellest kontrollib kera.ee QR-koodi generaator koodi loomise käigus ise: see teeb staatilise koodi, hoiatab madala kontrasti ja kitsa äärise eest, arvutab trükimõõdu ja loeb valmis koodi enne allalaadimist uuesti läbi.
Kasutatud allikad
Aeguvad koodid ja pettused
- QR Code Generator. What happens to my account and QR Codes when the trial expires (avaneb uues aknas). Dünaamiliste koodide väljalülitamine prooviaja lõpus.
- Consumerist (2015). QR Code On Ketchup Bottles Points To Porn Because Of Expired Domain (avaneb uues aknas). Heinzi aegunud domeen.
- RIA (2026). QR-kood: mugav abimees või varjatud oht? (avaneb uues aknas). Eesti juhtumid.
- ITvaatlik (2026). QR-koodid (avaneb uues aknas). Võltskleebised parkimissiltidel.
- ERR (2026). Kooliteedele ilmunud QR-koodid juhatavad narkootikume müüvasse veebipoodi (avaneb uues aknas).
- Selectra (2026). QR code horodateur autocollant pirate (avaneb uues aknas). Prantsusmaa parkimisautomaadid, sh Bergerac.
- TransportXtra (2025). £3.5m lost last year to fraudulent QR codes (avaneb uues aknas). Suurbritannia andmed.
- wwwhatsnew (2026). Códigos QR fraudulentos (avaneb uues aknas). Alicante trahvid vöötkoodiga.
- 360.ru (2026). В Петербурге мошенники начали клеить фейковые QR-коды на парковках (avaneb uues aknas). Peterburi parkimissildid.
Suurus, värv ja trükk
- Denso Wave. Point for determining the code area (avaneb uues aknas). Mooduli suurus, vaba ääris, andmete hulk.
- Denso Wave. QR Code FAQ (avaneb uues aknas). Värvid, läbipaistev materjal, kaubamärk.
- Denso Wave. Error correction feature (avaneb uues aknas).
- Finance Finland (2015). QR code in credit transfer forms (avaneb uues aknas). Soome pankade 0,5 mm moodul.
- Mediahuis. QR codes in newspaper printing (avaneb uues aknas). 100% K ja proovitrükk.
- QR Code Generator (2026). 10 QR Code Design Rules for Flawless Scans (avaneb uues aknas). Testimine, kontrast, kaugus.
Ajalugu
- Denso Wave. History of QR Code (avaneb uues aknas). Nurgamärkide suhe ja patendipoliitika.
- Gendai (2022). 「QRコード」を開発したのは日本人、その知られざる開発秘話 (avaneb uues aknas). Go mäng ja 5000 lehekülje uuring.
- Japan Patent Office (2022). QR Code (avaneb uues aknas). Patendi ja kaubamärgi strateegia.
Taustauuringus ja teksti toimetamisel kasutasin abivahendina Claude’i. Pildi genereerimisel kasutasin Google Flow’d.
Järgmine postitus otse postkasti
- Kord kuus saadan uute postituste kokkuvõtte.
- Uutest tasuta e-kursustest kuuled esimesena.
- Töövõtted, mida õpetan ja ise kasutan.


