Skip to content

myqr.dev

Privacy

Plain version: we collect scan analytics — without names or contact details — so you can see how your QR codes are doing. We never mix one customer's scan data into another customer's analytics, we never build profiles of the people who scan, and we never sell your scan data or your content. The longer version is below.

Last updated 25 August 2026 — we now describe exactly what deleting a single code does: it sits in Recently deleted for 30 days so you can undo, then it and its scan history are permanently erased. Deleting your account is still immediate. Nothing new is collected. We also now state our never-sell commitment in the same words as the Terms — we never sell your content or your scan data — rather than the narrower wording that was here before. If we change anything that matters, we'll flag it here with a new date — never edit it quietly.

What we collect when someone scans your QR

Each scan records: the country, region, and city it came from (worked out from the network, not from the scanner's phone), the device type, operating system, browser, language, the page that referred it (if any), and the time. We also store a one-way hash of the scanner's IP address so we can tell a repeat visit from a new one — never the IP itself.

Before hashing, we cut off the last part of the IP address, and the hash is salted with a key that rotates every day and is deleted within a few days. After that, the salted hash can no longer be traced back to an IP address. The rest of the scan record (like city, device, and time) is kept so your analytics keep working.

We do notcollect names, email addresses, GPS or street-level location, or any account identity of the people who scan. City is the most precise location we ever see, and it comes from the network, not from anyone's phone. We don't set advertising cookies on the redirect, and we don't track scanners across other websites.

What we collect when you have an account

Your email address (so we can send you a sign-in link), the QR codes you create, and the scan analytics for those codes. No password — we use one-time sign-in links instead.

We also note, once, how you first found MyQR — the page you landed on and any campaign tags in the link you clicked (things like utm_source), plus the site that referred you. Your browser holds that briefly in its own storage and a first-party cookie during sign-up, and we save it to your account so we know which of our marketing works. It never identifies the people who scan your codes, it's included in your data export, and it's deleted with your account.

When you use the free generator or report a code

To stop flooding, we briefly note a shortened version of your network address — never the full address — when you create a code without an account or report a code. It's used only for rate limiting and is deleted within 48 hours.

How we use it

We use this data to run MyQR: to redirect your codes, show you your analytics, keep the service secure and working, prevent abuse, and improve the product over time. We also look at aggregate, non-identifying totals across the whole service (like how many scans happened today) to run and improve MyQR. When we add features like an AI marketing assistant, it works on your own scans, on your behalf — it doesn't mix your analytics with another customer's.

Your scan data is yours, not ours to sell

This is the line we won't cross: we never mix one customer's scan data into another customer's analytics, we never build cross-customer profiles of the people who scan, and we never sell scan data to third parties — and we don't sell or share anyone's personal information, yours or your scanners'. (We do look at scan activity across the service — both totals and individual scan records, which never identify a person — to run, secure, and improve MyQR.) Your account's analytics are yours to view, export, and delete at any time. MyQR also uses scan data to run, secure, and improve the service — always as described on this page, and never for anything else.

If you ever use audience or marketing features we add later, they stay scoped to your own scanners and your own connected ad accounts. A person who scanned your QR could only ever see marketing from you — never from some other brand who bought a list. We don't build or sell that list.

Who helps us run the service

We use a small set of well-known providers to operate MyQR, and they only process what they need to:

  • Vercel — hosts the website and dashboard.
  • Supabase — stores the database and handles sign-in.
  • Cloudflare — DNS and the redirect edge for your QR codes.
  • Resend — sends our sign-in emails.

Cookies & on-device storage

The full list of what we put on your device, in plain language:

  • A sign-in session cookie on the dashboard (essential — it's how you stay signed in).
  • A first-party cookie that carries the "how you found us" note above through sign-up. It expires after 7 days.
  • Browser storage on this site for: your consent choice, that same first-visit note, and a flag that remembers you've seen the dashboard welcome tour.

We set no third-party advertising cookies, and nothing on the scan redirect sets a cookie at all. Our own site pages use Cloudflare Web Analytics — a cookieless page-view counter with no cross-site tracking — and only after you've accepted the notice above. Published landing pages never include it.

How long we keep things

Scan records are kept for as long as the account that owns the code exists. Deleting a code moves it to Recently deleted for 30 days so you can undo a mistake — its scan history is kept during those 30 days (that's what restore brings back) — and then the code and its entire scan history are permanently erased by a nightly cleanup. Deleting your whole account skips the waiting room: everything is erased immediately. Account details are kept until you delete your account. The rate-limit notes above are deleted within 48 hours, and the daily hashing salt within a few days.

Two smaller things, for completeness: codes made without an account have no owner who can delete them, so their scan records are kept for as long as the code stays active. And if you send us an abuse report, we keep the report and any contact email you include while we handle it and for our records afterward.

Your controls

From your account page you can download everything we hold about you as a single file (very large scan histories are capped at the most recent 100,000 scans, and the file says so if that happens), and you can delete your account — along with every QR code and all scan history — in one step, instantly. No support ticket, no cooling-off period.

Your privacy rights

Anyone — an account holder or someone who scanned a code — can email us to ask what we hold about them, ask for a copy, or ask for it to be deleted. We respond within 45 days, and we never treat you differently for asking. One honest limitation: scan records carry no name or contact details, so we usually cannot tell which scan belongs to which person — which means there is often nothing we can connect to you to hand over or delete, and we'll say so plainly if that's the case.

Changes & contact

If we change this policy in a way that matters, we'll say so plainly rather than quietly editing it. Questions, requests, or a privacy concern? Email me@makais.app.