SITE UNDER CONSTRUCTION. Everything here is provided AS IS, WITHOUT WARRANTIES, to the extent the law allows. It is information, not professional advice. Use at your own risk. Terms and liability limits →

eThorns ES
← TextES

Tool 4.1

QR code generator: free, static, never expires

Make free static QR codes for links, Wi-Fi, WhatsApp, contacts, email and SMS. They never expire and scans aren't tracked. Download PNG or SVG.

Runs on your deviceRuns entirely in your browser: nothing you type or upload leaves your device.

How to use it

  1. Choose what the code should hold: a link, text, Wi-Fi, WhatsApp, a phone number, an email, an SMS or a contact.
  2. Fill in the fields and, if you like, change the colors, margin or error correction. The preview updates as you type; the code is made in your browser and nothing you type is sent.
  3. Test-scan it with your phone, then download it as PNG or SVG.

QR codes a small business prints

Typical ones: a WhatsApp code on the counter so customers can write to you with one scan, the guest Wi-Fi at a café, a link to your menu or catalog, a contact card on a business card, a link to leave a review. The code stores its content inside the pattern, so it works without any server and never expires.

That also means it can't be changed after printing. If a link might change, point the code to an address you control, such as a page on your own domain, and update that page instead. For payments, use the official QR from your bank or payment app, which is linked to your account.

A WhatsApp code for taking orders

Choose WhatsApp, type 300 123 4567 and the message “Hola, quiero hacer un pedido”. A warning asks you to include the country code, because without it WhatsApp can't find the number. Type +57 300 123 4567 and the encoded text becomes https://wa.me/573001234567?text=Hola%2C%20quiero%20hacer%20un%20pedido, and the line under the preview reads “70 of 2331 bytes used (4%) · 37×37 modules”.

The bytes tell you how full the code is at the error-correction level you chose; the modules are the little squares per side. At the same printed size, fewer modules scan more easily from far away. Test it with your own phone: it should open a chat with that number and the message already typed. For Wi-Fi, the text looks like WIFI:T:WPA;S:Cafe Ejemplo;P:…;H:false;;, and phones offer to join the network.

Mistakes that make a code fail

A light code on a dark background, low contrast, or a margin thinner than 4 modules: the page warns about all three. Long content makes the code dense; above 57 modules per side it suggests printing it larger or shortening the text, and links with tracking parameters get a button to remove them. The size menu goes from 512 to 4096 px for the PNG; for a print shop, the SVG scales to any size without blurring.

Test it at the distance and in the light where people will actually scan it, before printing a hundred copies. And remember that a Wi-Fi code shows the password to anyone who scans it, so use it for a guest network, not the one your business computers use.

FAQ

Does this QR code expire?

No. It's a static code: what you type is stored inside the pattern itself, so it keeps working forever without any server. Many "free" generators make dynamic codes instead, which send people through their own link first, count the scans, and can stop working when a trial ends or unless you pay.

Are scans tracked?

Not by the code. When someone scans it, their phone reads the content straight from the pattern, so nobody, including us, sees or counts the scans. Tracking only happens if the content is a link that tracks visits, like one with `utm_` parameters or a short link from a counting service. When a link has known tracking parameters, the page tells you and offers to remove them.

Which error-correction level should I choose?

M is a good default. Choose H if the code will be printed small, on a rough surface, or may get scratched; choose L to fit very long content. Higher levels make the code denser.

Why won't my QR code scan?

Usually it's low contrast, a light code on a dark background, a margin that's too thin, or a code printed too small for how much it holds. Use a dark code on a light background, keep the 4-module margin and test it before printing. For payments, use the official QR from your bank or payment app.

Can I change where the code points after printing it?

No. A static code holds its content forever, which is exactly why it never expires. If you think the destination may change, encode a short address on your own website and redirect or update that page when you need to. Services that promise editable codes do the same thing, but through their own server, which is how they can count scans or switch the code off.

  • 4.2Word counterCount words, characters (with and without spaces), sentences and paragraphs as you type.
  • 4.3Listen to textHear any text, or a TXT, PDF or Word file, read aloud by your device's own voices.
  • 4.4Case converterConvert text to UPPERCASE, lowercase, Title Case, Sentence case, camelCase, PascalCase, snake_case, kebab-case or CONSTANT_CASE, in your browser.
  • 4.5Compare textsPaste two versions of a text and see every added and removed line highlighted, with the changed words marked.
  • 4.6Remove duplicate linesRemove duplicate lines from any list, sort A–Z or Z–A (natural order too), trim spaces and delete empty lines.
  • 4.7Lorem ipsumGenerate lorem ipsum placeholder text by paragraphs, sentences or words, in classic Latin or a Spanish-looking style with accents and ñ.
  • 4.8QR code readerRead a QR code from a photo, screenshot or camera and see what it contains, including who a payment QR pays.

╌╌ END ╌╌