# Offline QR scanning

> QR decoding is always offline — the camera and decoder run entirely on the phone, and no network is needed to read the code. The internet only matters afterwards, if the payload is a URL to open. WiFi credentials, contact cards, plain text, geo coordinates and calendar events all work with no connection.

Source: https://useqr.app/docs/scanning/offline-qr-scanning · Last reviewed 2026-08-21 · UseQR is free forever, MIT licensed, no signup.

---

## Decoding happens on the phone, full stop

A QR code is read by the camera and decoded by software running locally — finding the
[finder patterns](/glossary/finder-pattern), sampling the grid, running error
correction. None of that touches a network. Put a phone in airplane mode, point it at
any code, and the payload appears exactly as it would online.

The internet enters only at the **next** step, and only for some payloads: if the code
contains a URL, *opening* it needs a connection. The scan itself never does. Keeping
those two steps separate dissolves most confusion about "QR codes needing WiFi".

## Which payloads complete offline

| Payload | What happens on scan | Needs network? |
|---|---|---|
| [WiFi credentials](/wifi-qr-code) | Phone joins the network | **No** — that is the point |
| [vCard](/vcard-qr-code) / MeCard | Contact saved to the address book | No |
| Plain [text](/text-qr-code) | Text displayed | No |
| Phone / SMS | Dialler or Messages pre-filled | No (until you call or send) |
| Geo coordinates | Maps opens at the point | Parses offline; map tiles may need data |
| Calendar event | Event added | No |
| URL | Browser opens the page | **Yes**, to load the page |

The pattern: **self-contained payloads** — where the data *is* the content — work
with no connection at all. Only reference payloads (a URL pointing elsewhere) need the
network, and even those decode and display offline; the tap to open is what fails.
Building codes deliberately around self-contained payloads, including their
[capacity limits](/docs/reference/qr-code-capacity-table) (2,953 bytes at most), is
covered in [making a QR code work offline](/docs/how-to/how-to-make-a-qr-code-work-offline).

## The airplane-mode test as a privacy check

Offline behaviour doubles as a scanner audit. Enable airplane mode and scan a code:

- If the payload appears, your scanner decodes **locally**. The image and its contents
  stayed on the device.
- If scanning fails or the app stalls, the app is shipping your camera frames to a
  server to decode — which means everything you scan transits someone's
  infrastructure, a distinction that matters for the reasons in
  [what gets logged when you scan](/docs/security/qr-codes-and-tracking-what-is-logged).

Built-in camera scanning passes this test on current phones. Cloud visual-search
tools are the notable exception — the split is detailed in
[Google Lens QR scanning](/docs/scanning/google-lens-qr-scanning). Among no-install
options, [/scan](/scan) decodes inside the browser page, so once the page is loaded
the image never leaves your machine.

## Practical offline scenarios

- **Venues with no signal** — basements, aircraft, rural sites: WiFi codes, contact
  cards and text instructions all work; a menu URL does not. Print the content, not a
  link to it.
- **Travel and roaming** — a [WiFi code](/wifi-qr-code) at reception gets guests
  online *before* they have connectivity, which a URL-based portal never can. The
  same chicken-and-egg logic applies to any onboarding flow.
- **Emergency and field use** — instructions, coordinates and contact details encoded
  directly survive network outages by construction.

One honest caveat: some scanner *apps* phone home for URL reputation checks or ads
even though the decode is local, and may behave worse offline. The camera app and an
in-browser decoder are the dependable offline paths — one more reason the answer to
[do you need a scanner app](/docs/scanning/do-you-need-a-qr-scanner-app) is usually no.

## FAQ

### Do you need internet to scan a QR code?
No. Decoding runs entirely on the phone — camera, detection and error correction are all local. You only need a connection afterwards, and only if the payload is a URL you want to open.

### Which QR codes work completely offline?
Self-contained payloads: WiFi credentials, contact cards, plain text, phone numbers, SMS drafts, calendar events and geo coordinates. Everything the code promises happens on the device. Only URL codes need the network, and only at the moment you open the link.

### How can I tell if my scanner app uploads what I scan?
Turn on airplane mode and scan. A local decoder shows the payload normally; an app that decodes in the cloud fails or stalls. Local decoding means the image and its contents never leave your device.

### Why does a WiFi QR code work with no connection?
Because the credentials are inside the code itself. The phone decodes the SSID and password locally and joins the network directly — no internet is involved, which is exactly what makes it the right tool for getting people online.

## Try it

- https://useqr.app/wifi
- https://useqr.app/vcard
- https://useqr.app/text
- https://useqr.app/scan
