← back to tools

qr codes with arabic text · what works and what breaks

5 min read · last updated may 2026 · related tool: qr code generator

You create a QR code with an Arabic message. You print it on 500 business cards. Someone scans it and sees ÇáÓáÇã Úáíßã — garbled nonsense instead of your carefully written text. This happens more often than it should, and the root cause is always the same: encoding.

the encoding problem

QR codes store data as bytes. Text is converted to bytes using a character encoding. If the tool that creates the QR code uses one encoding (say, Windows-1256, a legacy Arabic encoding) and the scanner interprets it using another (say, UTF-8, the modern universal standard), Arabic text comes out garbled.

The fix is simple in theory: always use UTF-8. In practice, many QR code generators — especially older ones, desktop software, and some online tools — default to ISO-8859-1 or Windows-1256 for "compatibility." These encodings can represent Arabic characters, but they're not universally supported by QR scanners, and they fail completely for mixed-language text (Arabic + English in the same message).

how bababa's qr generator handles this

bababa uses the qrcode.js library, which encodes all text as UTF-8 by default. This means Arabic text (including mixed Arabic-English content) is correctly encoded every time, and any modern QR scanner — the camera apps on iOS and Android both use UTF-8 — will decode it correctly.

The library also handles the byte-mode encoding that QR codes use for non-Latin text. Arabic characters take 2–3 bytes each in UTF-8, so Arabic QR codes hold fewer characters than English ones at the same error correction level. For typical use cases (URLs, short messages, contact cards), this isn't a problem.

error correction: how much do you need?

QR codes have four error correction levels:

For printed materials (business cards, menus, posters), M or Q is usually right. For digital sharing (on a screen), L is fine because there's no physical damage to worry about.

wifi qr codes with arabic ssids

A WiFi QR code encodes the network name (SSID), password, and security type in a special format: WIFI:T:WPA;S:MyNetwork;P:MyPassword;;. If your SSID contains Arabic characters, the SSID must be UTF-8 encoded within this string.

Most modern routers support UTF-8 SSIDs, and most phones can connect to Arabic-named networks via QR scan. However, some older Android devices (pre-Android 10) have issues with non-Latin SSIDs in QR codes. If your audience includes users with older phones, consider using a Latin SSID for the QR code even if your network name is in Arabic.

vcard qr codes with arabic names

vCard (contact card) QR codes store name, phone, email, and organization in a structured text format. Arabic names work correctly as long as the generator uses UTF-8 (which bababa does). When scanned, the contact will show the Arabic name correctly in both iOS and Android contacts apps.

One gotcha: the vCard format has separate fields for "first name" and "last name." Arabic naming conventions don't always map cleanly to this structure — a full Arabic name might be "محمد بن عبدالله بن سعود" with no clear "first/last" split. For vCard purposes, put whatever you want contacts to file you under in the "last name" field, and everything else in "first name."

create arabic-safe qr codes

bababa's qr generator uses utf-8 encoding, supports text, wifi, and contact card formats, and lets you download as png or svg. everything runs in your browser.

open qr generator →