Logo, gradients, rounded dots, custom eyes — updated live as you type.
{{ __t('giro_intro_hint') }}
{{ __t('giro_ec_note') }}
{{ __t('empty_preview') }}
A QR code (Quick Response Code) is a two-dimensional barcode developed by Denso Wave in 1994. It can store text, URLs, contact info, Wi-Fi credentials and more, and is read by virtually every smartphone camera without a dedicated app.
This QR code generator supports six content types and rich styling: rounded dots, custom eyes, color gradients and a logo in the center — all in your browser, no sign-up, no watermark.
A GiroCode is a QR code based on the EPC069-12 standard from the European Payments Council. It carries every detail of a SEPA transfer – beneficiary, IBAN, optional BIC, amount and remittance information. When the payer scans it with their banking app, the transfer form is already filled in, eliminating typos in the IBAN or amount.
GiroCodes are recognized by virtually all German and Austrian banking apps and many across Europe. They are ideal for invoices, donation appeals, membership fees, reminders or posters – anywhere someone should transfer money quickly and without errors.
Generate a scan-ready GiroCode in under a minute:
Note: the amount is given in euros. If you leave the amount field empty, the payer can enter it themselves – handy for donations. The whole code is generated in your browser; no bank details are sent to any server.
QR codes have four error correction levels: L (~7%), M (~15%), Q (~25%) and H (~30%). Higher levels keep the code scannable even when damaged or partially covered by a logo, at the cost of denser modules. M is fine for paper print; use Q or H if you overlay a logo or place the code outdoors.
The QR code was invented in 1994 by Denso Wave (a Toyota subsidiary) for fast scanning of car parts in manufacturing. "QR" stands for "quick response". Since 2000 the format is standardized as ISO/IEC 18004. A QR code consists of a matrix of black and white squares ("modules") sized as one of 40 versions depending on payload. Version 1 is 21x21 modules and holds up to 25 alphanumeric characters at low error correction (level L). Version 40 measures 177x177 modules and can carry up to 4296 alphanumeric, 7089 numeric or 2953 byte-encoded characters. Nothing more fits.
The three large squares in the corners are finder patterns. They allow scanners to recognize the code regardless of rotation or skew. The fourth, smaller square at the bottom right is the alignment pattern — it helps with perspective correction. Between them sit the timing patterns: alternating black-white modules acting as a coordinate ruler. These structures are fixed and carry no data; they occupy roughly 30% of a small QR code. Only the remaining area gets filled with payload and Reed-Solomon error correction.
The four error-correction levels (L, M, Q, H) let the code stay readable after physical damage. L (low) tolerates 7% loss, M (medium) 15%, Q (quartile) 25%, H (high) 30%. Higher levels need more modules, making the code denser. Default is M; for QR codes with a center logo, choose at least Q so the logo doesn't break readability. Outdoor use (posters, shop windows, stickers) benefits from H against dirt and UV fading. Key rule of thumb: the logo must cover at most 30% of the code area, otherwise Reed-Solomon correction fails.
For a reliably scannable QR code in production:
Putting capacity figures into practice:
https://calcsi.com (18 chars) → version 2, 25x25 modules — crisply printed it scans at 2 cm code size.WIFI:T:WPA;S:Home;P:password123;; (40 chars) → version 3, 29x29 modules — iOS/Android auto-join when scanned.Even a technically perfect QR code can fail if the environment is wrong. Glossy paper (high-gloss print) reflects flash light and makes smartphone camera scanning impossible — prefer matte paper or larger codes. Ink print on absorbent paper can cause module bleeding, so codes need at least 0.5 mm line width. Low contrast (e.g. dark-blue code on black background) breaks scanning — foreground/background contrast must be at least 50%, ideally black on white. On strongly curved surfaces (bottles, mugs) the alignment marker helps only so much; more than 30 degrees of curvature is problematic. For web use: avoid PNG scaling, always export at the exact print size. SVG is preferable to any anti-aliasing artifacts.
M (15%) is enough. With a logo: at least Q (25%). For print, stickers, posters: H (30%). Higher levels use more modules — often no problem for short data.