# Dynamic QR Codes — Editable Redirect Hosting

> Dynamic QR codes you can edit after printing. Change destinations anytime, no reprinting. 7-character short links, http/https validation. Pro.

*Source: https://shopsavvy.com/qr/host*

---

## Hero

**Headline:** Dynamic QR Codes (Pro)

**Tagline:** Print Once. Edit Forever.

**Subhead:** Print once. Edit forever. Change where any QR code points without reprinting it.

**Primary CTA:** Download on the App Store

---

## How Dynamic QR Codes Work

### The Short URL

Every dynamic QR encodes a normal `https://shopsavvy.com/qr/{code}` URL. The QR pattern is built from this short URL — never from your destination — so the pattern is fixed forever.

### The Redirect Layer

When someone scans the code, our server resolves the short code to your current destination URL and issues a redirect. The whole round-trip is invisible to the scanner.

### Editing the Destination

Open the link in your QR Code Reader library, paste a new URL, save. The next scan resolves to the new destination immediately. No reprint. No QR change.

---

## Short Code Format

| Property | Value |
|----------|-------|
| Length | 7 characters |
| Alphabet | A–Z, a–z, 1–9 *excluding* I, O, l, 0 |
| Case sensitivity | Case-sensitive (uppercase ≠ lowercase) |
| Total combinations | > 3 trillion |
| Collision strategy | Server-generated, collision-checked at issue |
| Mutability | Once issued, the short code is permanent — only the destination changes |

The disambiguated alphabet matters because if anyone ever has to read or transcribe the URL, they'll never confuse `1` with `l` or `O` with `0`.

---

## Editable Fields

| Field | Editable | Affects QR Pattern |
|-------|----------|---------------------|
| Destination URL | Yes | No |
| Title | Yes | No |
| Active / Inactive | Yes | No |
| Short code | No | — |

---

## URL Validation Rules

- Must be a valid `http://` or `https://` URL
- Custom protocols rejected: `javascript:`, `data:`, `file:`, `ftp:`, etc.
- Validates on every save — broken URLs never persist
- Active/inactive toggle: an inactive link returns 404 until re-enabled

---

## Account & Auth

Dynamic QR hosting requires a Firebase-authenticated account. Each link is owned by exactly one account; only the owner can edit destinations or toggle active state. Sign in once and all your dynamic codes appear in your library on every device.

---

## Use Cases

- **Restaurant menus** — switch between seasonal menus without reprinting table tents
- **Event posters** — update the registration URL if the venue or schedule changes day-of
- **Product packaging** — skip costly reprints when launching a new landing page
- **Real estate signs** — re-point the listing URL when status changes
- **Trade show collateral** — same booth banners, fresh URLs each show
- **Retail POS displays** — update promo URLs daily without recutting display vinyl
- **Hotel room cards** — point at the current concierge URL or in-room services
- **Business cards** — swap your portfolio URL after a job change

---

## Pro Requirement

Dynamic QR hosting is part of QR Code Reader Pro. Pro unlocks:

- Unlimited dynamic codes
- Unlimited destination edits per link
- Active/inactive toggling
- Full per-link analytics dashboard (see [QR Code Analytics](/qr/stats))

---

## Frequently Asked Questions

**What is a dynamic QR code?**
A dynamic QR code points at a short URL you control. The QR pattern stays the same forever, but the destination it forwards to can be changed at any time without reprinting the code.

**Why use a dynamic QR code instead of a regular one?**
Static QR codes encode the destination directly, so changing the URL means generating and reprinting a new code. Dynamic QR codes let you fix typos, swap landing pages, end campaigns, or update menus without touching the printed material.

**How long are the short codes?**
7 characters from a disambiguated alphabet that excludes I, O, l, and 0 to prevent transcription errors. That gives over 3 trillion unique combinations per host domain.

**Do I need an account?**
Yes. Dynamic QR codes are tied to a Firebase-authenticated account so only you can edit your destinations. Sign in once and all your dynamic codes appear in your library.

**Can I change the destination after I print?**
Yes — that is the whole point. Edit the destination URL, the title, or toggle active/inactive at any time. The next scan resolves to your new destination immediately.

**What URLs are allowed?**
Any valid http or https URL. The app validates the URL on save to prevent broken codes. Custom protocols and `javascript:` URLs are rejected.

**Are dynamic QR codes free?**
Dynamic QR hosting is a Pro feature. Pro unlocks unlimited dynamic codes, full edit access, and pairs with the analytics dashboard for per-link scan tracking.

**Will my dynamic QR work with every QR scanner?**
Yes. Your QR encodes a normal https URL, so any QR reader on any phone resolves it correctly. The redirect happens server-side at shopsavvy.com and is invisible to the scanner.

---

## Related Pages

- [QR Code Reader](/qr-code-reader) — the full app overview
- [QR Code Generator](/qr/create) — design and build the QR before making it dynamic
- [QR Code Analytics](/qr/stats) — track every scan of your dynamic codes
