Jak malý může být vytištěný QR kód? Spočítané velikosti
Neexistuje jedna minimální velikost QR kódu. Pět reálných obsahů jsme spočítali naším kodérem a výsledné moduly převedli na milimetry.
Co je tu nového: Číslo verze symbolu a počet modulů pro pět reálných typů obsahu na všech čtyřech úrovních korekce chyb, spočítané naším kodérem MostlyQR a převedené na tištěné milimetry. Minimální velikost tedy vychází z tvého obsahu, nikoli z jednoho plošného čísla.
Každý návod k tisku QR kódů ti dá jediné číslo. Dva centimetry. Jeden palec. Tři centimetry na obal. Tato čísla jsou odhady oblečené do podoby standardů a jsou špatně v obou směrech: příliš velká pro krátký odkaz na vizitce, nebezpečně malá pro vCard na etiketě láhve.
Skutečná odpověď je dělení a můžeš ho provést dřív, než cokoli vytiskneš.
# Proč neexistuje jedna minimální velikost
QR kód není obrázek, který se jen zmenšuje. Je to mřížka modulů — malých čtverečků — a jejich počet je dán tvým obsahem, ne tebou. Dvacet jedna znaků krátkého odkazu potřebuje mřížku 25×25. vCard se jménem, telefonním číslem a e-mailem potřebuje 49×49. Vytiskni obojí na 25 mm a máš vytištěné dvě velmi různé věci: v prvním případě je každý modul široký 0,76 mm, v druhém 0,44 mm.
Modul je to, co tiskárna musí udržet a fotoaparát rozlišit. Otázka „jak malý může být můj QR kód“ je tedy ve skutečnosti otázka „jak malý může být jeden modul a kolik jich mám“ — a tu druhou polovinu lze spočítat.
# Kolik modulů stojí tvůj obsah
Prohnali jsme pět typů obsahu přes enkodér, který MostlyQR skutečně používá (buildMatrix v našem packages/qr, který obaluje MIT knihovnu node-qrcode), a to při všech čtyřech úrovních opravy chyb. Číslo za lomítkem je velikost mřížky — počet modulů na jedné straně, bez tiché zóny.
| Obsah | Znaků | EC L | EC M | EC Q | EC H |
|---|---|---|---|---|---|
| krátký odkaz | 21 | v2 / 25 | v2 / 25 | v2 / 25 | v3 / 29 |
| připojení k Wi-Fi (WPA) | 47 | v3 / 29 | v4 / 33 | v4 / 33 | v6 / 41 |
| URL kampaně s UTM značkami | 87 | v5 / 37 | v6 / 41 | v7 / 45 | v9 / 53 |
| dlouhá URL produktu | 116 | v6 / 41 | v7 / 45 | v9 / 53 | v10 / 57 |
| vCard (jméno, organizace, telefon, e-mail, URL) | 135 | v6 / 41 | v8 / 49 | v9 / 53 | v11 / 61 |
Toto jsou přesné řetězce, takže si můžeš zreprodukovat každý řádek:
https://mqr.sh/AB12CD
WIFI:T:WPA;S:CafeGuest;P:coffee-and-cake-2026;;
https://example.com/spring-menu?utm_source=poster&utm_medium=qr&utm_campaign=spring2026
https://example.com/collections/spring-2026/products/heirloom-tomato-seed-pack-organic?variant=4471029&ref=packaging
BEGIN:VCARD ⏎ VERSION:3.0 ⏎ N:Novak;Ana ⏎ FN:Ana Novak ⏎ ORG:MostlyQR ⏎
TEL:+4420790000 ⏎ EMAIL:anna@example.org ⏎ URL:https://mostlyqr.com ⏎ END:VCARD
Rozptyl je podstatou. U běžných, každodenních obsahů se mřížka pohybuje od 25 do 61 modulů na stranu — což je při lineární hustotě rozdíl 2,4násobku, a to ještě předtím, než někdo zvolí formát papíru.
# Pokud tuhle tabulku kontroluješ, kontroluj ji podle řetězců
Počet znaků sám o sobě tato čísla nereprodukuje a stojí za to vědět proč, než usoudíš, že jsme je spočítali špatně.
Enkodér QR kódu nebere každý znak jako bajt. Pro každou řadu znaků vybere režim kódování — numerický (3⅓ bitu na číslici), alfanumerický (5½ bitu, ale jen pro číslice, velká písmena a několik symbolů), nebo bajtový (8 bitů) — a dobrý enkodér rozdělí jeden obsah do několika segmentů, aby byl celkový součet co nejmenší. Ten náš to dělá. Tady je, co skutečně zvolil:
| Obsah | Segmenty |
|---|---|
| krátký odkaz | Byte:14 + Alphanumeric:7 |
| připojení k Wi-Fi | Alphanumeric:10 + Byte:37 |
| URL kampaně | Byte:83 + Numeric:4 |
| dlouhá URL produktu | Byte:95 + Numeric:7 + Byte:14 |
| vCard | Alphanumeric:11 + Byte:1 + Alphanumeric:11 + Byte:44 + Numeric:10 + Byte:49 + Alphanumeric:9 |
Zakóduj stejné počty znaků jako jediný bajtový úsek a dostaneš jinou, větší tabulku — v3/29 pro krátký odkaz na úrovni Q místo v2/25 a v7/45 pro vCard na úrovni L místo v6/41. Obě tabulky jsou správně; popisují různé obsahy.
To ti dává zdarma páku, pokud tvé krátké odkazy používají slug psaný velkými písmeny. https://mqr.sh/AB12CD se rozdělí na bajtový a alfanumerický úsek, protože schéma a hostitel jsou malými písmeny. Napiš celou URL velkými písmeny — HTTPS://MQR.SH/AB12CD — a stane se z ní jeden alfanumerický segment o 21 znacích: na úrovni L je to v1, 21 modulů, o celou verzi menší než smíšený tvar. (Na úrovních M a Q tento konkrétní řetězec zůstává na v2/25 — už teď těží z alfanumerického konce; zisk se projeví na úrovni L a roste s délkou úseku velkých písmen.) Schéma a hostitel nerozlišují velikost písmen, takže se URL přeloží stejně; cesta rozlišuje, takže to funguje jen tehdy, když je tvůj slug opravdu psaný velkými písmeny. Ty naše jsou.
# Stejných 25 mm, pět různých kódů
Teď fixuj tištěnou šířku a přečti, co každý obsah zanechá. Jde o (šířka ÷ (moduly + 8)), kde 8 je povinná čtyřmodulová tichá zóna z každé strany:
| Obsah | Velikost modulu při EC M na 25 mm | Velikost modulu při EC H na 25 mm |
|---|---|---|
| krátký odkaz | 0,76 mm | 0,68 mm |
| připojení k Wi-Fi | 0,61 mm | 0,51 mm |
| URL kampaně s UTM | 0,51 mm | 0,41 mm |
| dlouhá URL produktu | 0,47 mm | 0,38 mm |
| vCard | 0,44 mm | 0,36 mm |
Stejný čtverec na stránce. Na jednom konci tabulky je dvojnásobná velikost prvku oproti druhému. Tiskárna, která si pohodlně poradí s 0,5 mm čistě, vyrobí z téhož layoutu dokonalý QR kód pro krátký odkaz a sotva čitelný vCard.
# Minimální šířka, z druhé strany
Většina lidí přichází s opačnou otázkou: ne „co dostanu na 25 mm“, ale „jak malý můžu jít“. Zvol velikost modulu, kterou tvůj tiskový proces opravdu udrží — 0,5 mm je běžná spodní hranice pro ofset a slušný digitální tisk na křídový papír — a šířka z ní plyne:
| Obsah | EC M | EC H |
|---|---|---|
| krátký odkaz | 16,5 mm | 18,5 mm |
| připojení k Wi-Fi | 20,5 mm | 24,5 mm |
| URL kampaně s UTM | 24,5 mm | 30,5 mm |
| dlouhá URL produktu | 26,5 mm | 32,5 mm |
| vCard | 28,5 mm | 34,5 mm |
Tohle je rozsah, který internet zhušťuje do „zhruba 2 cm“. Na jeho koncích jsou 2 cm buď o 20 % větší, než potřebuješ, nebo o 40 % menší, než se dá zvládnout.
Pokud tvoje tiskárna udrží 0,33 mm — jemný sítotisk, dobrý digitální tisk, žádný nasákavý podklad — vyděl tyto hodnoty 1,5. Pokud tiskneš na vlnitou lepenku, textil nebo cokoli, co rozlévá inkoust, jdi opačným směrem a počítej s 1 mm.
# Největší páka je URL, ne tiskárna
Podívej se znovu na první tabulku. Krátký odkaz a dlouhá URL produktu nesou stejnou informaci — oba zavedou člověka na tutéž stránku — a jeden má 25 modulů, zatímco druhý 45.
To je celá hra. Každý milimetr velikosti modulu, který si vyhádáš s tiskárnou, můžeš získat zadarmo tím, že zkrátíš to, co kód kóduje. Dynamický krátký odkaz má 21 znaků bez ohledu na délku cíle a má druhou výhodu, která na tiskovém běhu váží víc: můžeš změnit, kam ukazuje, až je barva zaschlá, takže kód, který přežije svou přistávací stránku, se nestane slepou uličkou.
Pro cokoli, co se bude tisknout malé — vizitku, štítek, roh jídelního lístku — zakóduj krátký odkaz a přesměruj. Zakódovat celou kampaňovou URL s jejími UTM značkami přímo do kódu tě stojí 16 modulů na stranu a nekoupí nic, co přesměrování neudělá lépe.
# Kolik tě oprava chyb stojí na velikosti
Oprava chyb přidává redundanci, aby kód šel přečíst i poškozený nebo částečně zakrytý. Není zadarmo a tabulky výše ji vyčíslují:
- krátký odkaz, M → H: 25 → 29 modulů (+16 % lineárně)
- připojení k Wi-Fi, M → H: 33 → 41 (+24 %)
- vCard, M → H: 49 → 61 (+24 %)
O čtvrtinu širší kód, který přežije oděrky, tisk na obal nebo částečné zakrytí logem. Na plakátu, kde je místo zdarma, vezmi úroveň H a přestaň nad tím přemýšlet. Na štítku, kde máš k dispozici jen 30 mm, úroveň M s krátkým odkazem překoná úroveň H s dlouhou URL — kratší obsah nese víc odolnosti, než dokáže dodatečná oprava chyb.
Pokud kód zakrýváš logem, posun k H je výrazně silnější a existuje změřený rozpočet pro to, jak velké může logo být.
# Co to neměří
Všechno výše se týká symbolu. Je to aritmetika nad enkodérem, je přesná a můžeš ji znovu spustit. Je to ale jen polovina toho, co rozhoduje, zda se vytištěný kód naskenuje:
- Neotestovali jsme vzdálenost skenování se skutečnými fotoaparáty. Obecné průmyslové pravidlo — šířka kódu by měla být zhruba desetina vzdálenosti, ze které ho chceš skenovat — je široce citované, ale neověřili jsme ho. Ber ho jako výchozí bod pro plakáty a značení, ne jako měření.
- Rozlévání inkoustu, podklad a kontrast v číslech nejsou. Modul 0,4 mm na křídovém kartonu a modul 0,4 mm na vlnité lepence nejsou stejný modul.
- Kvalita fotoaparátu se výrazně liší. Pětiletý telefon v zašlé restauraci je skutečný test a ten bys měl opravdu provést: vytiskni kód ve velikosti, jakou zamýšlíš, na papíru, jaký zamýšlíš, a naskenuj ho nejhorším telefonem v kanceláři.
Poslední bod není výhrada, je to rada. Aritmetika ti řekne, které velikosti stojí za otestování. Test ti řekne, jestli to funguje.
# Spusť si to znovu sám
Každou tabulku výše vypisuje skript, místo aby byla ručně přepsána do článku, a skript je v repozitáři v draft/mostlyqr/seo/benchmarks/print-size.js. Spustí buildMatrix nad pěti řetězci výše, vypíše segmenty režimů kódování, vedle skutečné tabulky vytiskne kontrolní tabulku pro bajtový režim a odvodí milimetrové hodnoty. Pokud je tu nějaké číslo špatně, je to v tom souboru, kde je to špatně.
# Zkrácená verze
- Zakóduj krátký odkaz, ne celou URL — je to jediná páka, která mění mřížku místo papíru.
- Najdi počet modulů svého obsahu v tabulce výše, nebo ho spočítej.
- Vynásob (moduly + 8) nejmenším modulem, který tvůj tiskový proces čistě udrží. Dostaneš minimální šířku. (Pokud kód vkládáš do některé z našich šablon, plakát ve formátu A3 a leták ve formátu A4 nabízejí víc místa, než kterýkoli obsah zde potřebuje.)
- Vytiskni ho v té velikosti, na skutečném papíře, a naskenuj ho špatným telefonem.
Pokud chceš, aby kód nesl kromě dat i obrázek, otázka velikosti se ještě zostří — fotografie potřebuje mnohem hustší mřížku, aby byla vůbec vidět, což jsme změřili zvlášť pro fotografické QR kódy.
Často kladené otázky
Jaká je minimální velikost QR kódu?
Jedno číslo neexistuje. Kód je mřížka modulů a to, kolik jich potřebuje, závisí úplně na tom, kolik dat do něj vložíš. Krátký odkaz s úrovní korekce chyb M má 25 modulů na šířku, stejný kód s vCardem má 49. Vytištěné na stejnou šířku jsou moduly druhého téměř poloviční, takže jeden skenuje při 17mm a druhý ne. Nejdřív spočítej počet modulů a pak zvol šířku.
Zvětšuje delší URL QR kód?
Zhušťuje ho, což je v podstatě totéž. V našich měřeních se krátký odkaz o 21 znacích zakóduje na 25 modulů při úrovni M a produktová URL o 116 znacích na 45. Vytištěné obě na šířku 25mm mají moduly 0.76mm, respektive 0.47mm. Zkrácení URL je nejlevnější způsob, jak udělat kód tisknutelný v malém. Nic nestojí a je to jediná páka, která mění mřížku, ne papír.
Zvětšuje vyšší korekce chyb QR kód?
Ano, a o víc, než si většina lidí myslí. Přechod z úrovně M na H přidal u všech pěti obsahů 4 až 12 modulů na každou stranu. U vCardu se 49 modulů změnilo na 61, což je o 25% větší lineární velikost, kterou musíš vytisknout. Úroveň H se obvykle vyplatí, pokud bude kód v rukou, na obalu nebo částečně zakrytý logem, ale je to rozhodnutí o velikosti, ne bezplatné vylepšení.
Kolik bílého místa QR kód potřebuje kolem sebe?
Čtyři moduly na každou stranu. Tichá zóna je součástí symbolu, ne dekorace, protože čtečky ji používají k nalezení okrajů, proto ji počítáme do výpočtu. Každá tištěná šířka v tomto článku je spočítána jako (moduly + 8) × velikost modulu.
- Skenují se fotografické QR kódy doopravdy? Výsledky našich testůFotografický QR kód by měl skenovat hůř. Změřili jsme ten náš skutečným dekodérem — rozmazaný, zmenšený a čtený tak, jak ho čte čtečka.
- Jak velké smí být logo na QR kódu? Změřili jsme to„30%“ korekce chyb není rozpočet na logo. Vyráželi jsme do kódů díry, dokud skutečný dekodér nevzdal, a zapsali jsme, kde se to zlomilo.