Create your QR code

Three steps. Live preview. Scan-checked before you pay.

1. Pick your QR type

Dynamic codes track scans and let you change the destination later. Static codes carry the data inside, forever.

Dynamic — editable destination
Static — data inside the code

2. Your QR code content

Type:

Only you see this. It is never shown to people who scan.

Information Add essential information

That does not look like a valid URL. It has to be a real web address (e.g. https://example.com).

Only you see this. It is never shown to people who scan.

Appearance Choose your color scheme
Color scheme
vCard information Add essential information

JPG, PNG or WEBP. It shows on your contact page.

That does not look like a phone number. Use digits only (with the international + prefix if needed), no letters: e.g. +1 555 000 0000.

That does not look like a phone number. Use digits only (with the international + prefix if needed), no letters: e.g. +1 555 000 0000.

That does not look like a phone number. Use digits only (with the international + prefix if needed), no letters: e.g. +1 555 000 0000.

That does not look like an email address. It needs an @ and a domain, e.g. name@example.com.

That does not look like a valid URL. It has to be a real web address (e.g. https://example.com).

Location

That postal code does not look valid. Use your country's own format (e.g. 28001, or D01 F5P2 in Ireland).

Tracking Analytics

Optional. Measures visits to the page your code opens.

That does not look like a GA4 ID. Expected format: G-XXXXXXXXXX.

Optional. Lets you build audiences from people who scan.

A Facebook Pixel ID is 9 to 16 digits, nothing else.

Optional. Loads your tag container on the landing page.

That does not look like a Tag Manager ID. Expected format: GTM-XXXXXXX.

Only you see this. It is never shown to people who scan.

Appearance Choose your color scheme
Color scheme
Business information Add essential information

JPG, PNG or WEBP. It heads your page.

JPG, PNG or WEBP. Square works best.

That does not look like a valid URL. It has to be a real web address (e.g. https://example.com).

Opening hours
Weekly schedule

Tick the days you open and set the hours. Unticked days show as closed. Add a second shift on any day for a midday break.

Enter the date as YYYY-MM-DD (e.g. 2026-09-30).

Shows as a highlighted notice on your page while both dates are filled in.

Enter the date as YYYY-MM-DD (e.g. 2026-09-30).

Location

That postal code does not look valid. Use your country's own format (e.g. 28001, or D01 F5P2 in Ireland).

Facilities

One per line. They show as a list on your page.

Contact information

That does not look like a phone number. Use digits only (with the international + prefix if needed), no letters: e.g. +1 555 000 0000.

That does not look like an email address. It needs an @ and a domain, e.g. name@example.com.

That does not look like a valid URL. It has to be a real web address (e.g. https://example.com).

About the company

Tracking Analytics

Optional. Measures visits to the page your code opens.

That does not look like a GA4 ID. Expected format: G-XXXXXXXXXX.

Optional. Lets you build audiences from people who scan.

A Facebook Pixel ID is 9 to 16 digits, nothing else.

Optional. Loads your tag container on the landing page.

That does not look like a Tag Manager ID. Expected format: GTM-XXXXXXX.

Only you see this. It is never shown to people who scan.

Appearance Choose your color scheme
Color scheme
Basic information Add essential information

Minimum 640x360 px. JPG, PNG or WEBP.

Social media channels

That does not look like a valid URL. It has to be a real web address (e.g. https://example.com).

That does not look like a valid URL. It has to be a real web address (e.g. https://example.com).

That does not look like a valid URL. It has to be a real web address (e.g. https://example.com).

That does not look like a valid URL. It has to be a real web address (e.g. https://example.com).

That does not look like a valid URL. It has to be a real web address (e.g. https://example.com).

That does not look like a valid URL. It has to be a real web address (e.g. https://example.com).

That does not look like a valid URL. It has to be a real web address (e.g. https://example.com).

That does not look like a valid URL. It has to be a real web address (e.g. https://example.com).

That does not look like a valid URL. It has to be a real web address (e.g. https://example.com).

Tracking Analytics

Optional. Measures visits to the page your code opens.

That does not look like a GA4 ID. Expected format: G-XXXXXXXXXX.

Optional. Lets you build audiences from people who scan.

A Facebook Pixel ID is 9 to 16 digits, nothing else.

Optional. Loads your tag container on the landing page.

That does not look like a Tag Manager ID. Expected format: GTM-XXXXXXX.

Only you see this. It is never shown to people who scan.

Appearance Choose your color scheme
Color scheme
App information Add essential information

Square works best. JPG, PNG or WEBP.

That does not look like a valid URL. It has to be a real web address (e.g. https://example.com).

Links to platforms

That does not look like a valid URL. It has to be a real web address (e.g. https://example.com).

That does not look like a valid URL. It has to be a real web address (e.g. https://example.com).

That does not look like a valid URL. It has to be a real web address (e.g. https://example.com).

Tracking Analytics

Optional. Measures visits to the page your code opens.

That does not look like a GA4 ID. Expected format: G-XXXXXXXXXX.

Optional. Lets you build audiences from people who scan.

A Facebook Pixel ID is 9 to 16 digits, nothing else.

Optional. Loads your tag container on the landing page.

That does not look like a Tag Manager ID. Expected format: GTM-XXXXXXX.

Only you see this. It is never shown to people who scan.

Appearance Choose your color scheme
Color scheme
Video Add essential information

One per line.

Video information

That does not look like a valid URL. It has to be a real web address (e.g. https://example.com).

Tracking Analytics

Optional. Measures visits to the page your code opens.

That does not look like a GA4 ID. Expected format: G-XXXXXXXXXX.

Optional. Lets you build audiences from people who scan.

A Facebook Pixel ID is 9 to 16 digits, nothing else.

Optional. Loads your tag container on the landing page.

That does not look like a Tag Manager ID. Expected format: GTM-XXXXXXX.

Only you see this. It is never shown to people who scan.

Appearance Choose your color scheme
Color scheme
MP3 information Add essential information

That does not look like a valid URL. It has to be a real web address (e.g. https://example.com).

JPG, PNG or WEBP.

That does not look like a valid URL. It has to be a real web address (e.g. https://example.com).

Tracking Analytics

Optional. Measures visits to the page your code opens.

That does not look like a GA4 ID. Expected format: G-XXXXXXXXXX.

Optional. Lets you build audiences from people who scan.

A Facebook Pixel ID is 9 to 16 digits, nothing else.

Optional. Loads your tag container on the landing page.

That does not look like a Tag Manager ID. Expected format: GTM-XXXXXXX.

Only you see this. It is never shown to people who scan.

Appearance Choose your color scheme
Color scheme
Your PDF file Add essential information

That does not look like a valid URL. It has to be a real web address (e.g. https://example.com).

PDF details

That does not look like a valid URL. It has to be a real web address (e.g. https://example.com).

Tracking Analytics

Optional. Measures visits to the page your code opens.

That does not look like a GA4 ID. Expected format: G-XXXXXXXXXX.

Optional. Lets you build audiences from people who scan.

A Facebook Pixel ID is 9 to 16 digits, nothing else.

Optional. Loads your tag container on the landing page.

That does not look like a Tag Manager ID. Expected format: GTM-XXXXXXX.

Only you see this. It is never shown to people who scan.

Appearance Choose your color scheme
Color scheme
Link list information Add essential information

JPG, PNG or WEBP. It heads your page.

Add links
Links

As many links as you need, with their button text. Empty rows are ignored.

Tracking Analytics

Optional. Measures visits to the page your code opens.

That does not look like a GA4 ID. Expected format: G-XXXXXXXXXX.

Optional. Lets you build audiences from people who scan.

A Facebook Pixel ID is 9 to 16 digits, nothing else.

Optional. Loads your tag container on the landing page.

That does not look like a Tag Manager ID. Expected format: GTM-XXXXXXX.

Only you see this. It is never shown to people who scan.

Appearance Choose your color scheme
Color scheme
Add images Add essential information

JPG, PNG or WEBP.

One per line, same order as the photos above. Leave it empty for no captions.

Gallery information

That does not look like a valid URL. It has to be a real web address (e.g. https://example.com).

That does not look like a valid URL. It has to be a real web address (e.g. https://example.com).

Tracking Analytics

Optional. Measures visits to the page your code opens.

That does not look like a GA4 ID. Expected format: G-XXXXXXXXXX.

Optional. Lets you build audiences from people who scan.

A Facebook Pixel ID is 9 to 16 digits, nothing else.

Optional. Loads your tag container on the landing page.

That does not look like a Tag Manager ID. Expected format: GTM-XXXXXXX.

Only you see this. It is never shown to people who scan.

YouTube link Add essential information

That does not look like a valid URL. It has to be a real web address (e.g. https://example.com).

Tracking Analytics

Optional. Measures visits to the page your code opens.

That does not look like a GA4 ID. Expected format: G-XXXXXXXXXX.

Optional. Lets you build audiences from people who scan.

A Facebook Pixel ID is 9 to 16 digits, nothing else.

Optional. Loads your tag container on the landing page.

That does not look like a Tag Manager ID. Expected format: GTM-XXXXXXX.

Only you see this. It is never shown to people who scan.

Appearance Choose your color scheme
Color scheme
Page header Add essential information

JPG, PNG or WEBP. It heads your page.

That does not look like a valid URL. It has to be a real web address (e.g. https://example.com).

A real page rarely has just one action. Leave it empty for one button only.

Social media

That does not look like a valid URL. It has to be a real web address (e.g. https://example.com).

That does not look like a valid URL. It has to be a real web address (e.g. https://example.com).

That does not look like a phone number. Use digits only (with the international + prefix if needed), no letters: e.g. +1 555 000 0000.

That does not look like a valid URL. It has to be a real web address (e.g. https://example.com).

That does not look like a valid URL. It has to be a real web address (e.g. https://example.com).

That does not look like a valid URL. It has to be a real web address (e.g. https://example.com).

That does not look like a valid URL. It has to be a real web address (e.g. https://example.com).

Photo gallery

JPG, PNG or WEBP. A second section besides the header image.

Opening hours (optional)
Weekly schedule (optional)

Tick the days you open and set the hours. Leave every day unticked to hide this section.

Location

That postal code does not look valid. Use your country's own format (e.g. 28001, or D01 F5P2 in Ireland).

Facilities

One per line. They show as a list on your page.

Frequently asked questions
Questions and answers

Add as many as you need. Empty ones are ignored.

Tracking Analytics

Optional. Measures visits to the page your code opens.

That does not look like a GA4 ID. Expected format: G-XXXXXXXXXX.

Optional. Lets you build audiences from people who scan.

A Facebook Pixel ID is 9 to 16 digits, nothing else.

Optional. Loads your tag container on the landing page.

That does not look like a Tag Manager ID. Expected format: GTM-XXXXXXX.

Only you see this. It is never shown to people who scan.

Appearance Choose your color scheme
Color scheme
Event information Add essential information

JPG, PNG or WEBP.

What people ask first. Shows as a highlighted line under the title.

That does not look like a valid URL. It has to be a real web address (e.g. https://example.com).

Separate from the button above, for when tickets are sold somewhere else.

That does not look like a valid URL. It has to be a real web address (e.g. https://example.com).

Event time and date

Enter the date as YYYY-MM-DD, with an optional time (e.g. 2026-09-12 20:00).

Enter the date as YYYY-MM-DD, with an optional time (e.g. 2026-09-12 20:00).

Organizer information

That does not look like a phone number. Use digits only (with the international + prefix if needed), no letters: e.g. +1 555 000 0000.

That does not look like an email address. It needs an @ and a domain, e.g. name@example.com.

That does not look like a valid URL. It has to be a real web address (e.g. https://example.com).

Location

That postal code does not look valid. Use your country's own format (e.g. 28001, or D01 F5P2 in Ireland).

Facilities

One per line. They show as a list on your page.

Tracking Analytics

Optional. Measures visits to the page your code opens.

That does not look like a GA4 ID. Expected format: G-XXXXXXXXXX.

Optional. Lets you build audiences from people who scan.

A Facebook Pixel ID is 9 to 16 digits, nothing else.

Optional. Loads your tag container on the landing page.

That does not look like a Tag Manager ID. Expected format: GTM-XXXXXXX.

Only you see this. It is never shown to people who scan.

Appearance Choose your color scheme
Color scheme
Your feedback form Add essential information

JPG, PNG or WEBP. It heads the form.

That does not look like a valid URL. It has to be a real web address (e.g. https://example.com).

Categories to rate

One per line. Each gets its own star rating on the form.

User contact details
Tracking Analytics

Optional. Measures visits to the page your code opens.

That does not look like a GA4 ID. Expected format: G-XXXXXXXXXX.

Optional. Lets you build audiences from people who scan.

A Facebook Pixel ID is 9 to 16 digits, nothing else.

Optional. Loads your tag container on the landing page.

That does not look like a Tag Manager ID. Expected format: GTM-XXXXXXX.

Only you see this. It is never shown to people who scan.

Appearance Choose your color scheme
Color scheme
Basic information Add essential information

JPG, PNG or WEBP.

Coupon information

Enter the date as YYYY-MM-DD (e.g. 2026-09-30).

That does not look like a valid URL. It has to be a real web address (e.g. https://example.com).

Location

That postal code does not look valid. Use your country's own format (e.g. 28001, or D01 F5P2 in Ireland).

Tracking Analytics

Optional. Measures visits to the page your code opens.

That does not look like a GA4 ID. Expected format: G-XXXXXXXXXX.

Optional. Lets you build audiences from people who scan.

A Facebook Pixel ID is 9 to 16 digits, nothing else.

Optional. Loads your tag container on the landing page.

That does not look like a Tag Manager ID. Expected format: GTM-XXXXXXX.

Only you see this. It is never shown to people who scan.

Information Add essential information

Only you see this. It is never shown to people who scan.

Information Add essential information

That does not look like a valid URL. It has to be a real web address (e.g. https://example.com).

Only you see this. It is never shown to people who scan.

Information Add essential information

Only used when the security type above is WPA2-Enterprise (EAP), common in office and campus networks.

Only you see this. It is never shown to people who scan.

Information Add essential information

That does not look like a phone number. Use digits only (with the international + prefix if needed), no letters: e.g. +1 555 000 0000.

Only you see this. It is never shown to people who scan.

Information Add essential information

That does not look like a phone number. Use digits only (with the international + prefix if needed), no letters: e.g. +1 555 000 0000.

Only you see this. It is never shown to people who scan.

Information Add essential information

That does not look like an email address. It needs an @ and a domain, e.g. name@example.com.

Only you see this. It is never shown to people who scan.

Appearance Choose your color scheme
Color scheme
Restaurant information Add essential information

JPG, PNG or WEBP. A dish photo sells more than any description.

JPG, PNG or WEBP. Square works best.

Menu sections

One dish per line: name - price. Add #vegan, #glutenFree or #spicy at the end for a badge.

One dish per line: name - price. Add #vegan, #vegetarian, #glutenFree or #spicy at the end for a badge.

One dish per line: name - price. Same #tags work here too.

Tracking Analytics

Optional. Measures visits to the page your code opens.

That does not look like a GA4 ID. Expected format: G-XXXXXXXXXX.

Optional. Lets you build audiences from people who scan.

A Facebook Pixel ID is 9 to 16 digits, nothing else.

Optional. Loads your tag container on the landing page.

That does not look like a Tag Manager ID. Expected format: GTM-XXXXXXX.

Only you see this. It is never shown to people who scan.

Appearance Choose your color scheme
Color scheme
Business information Add essential information

JPG, PNG or WEBP. Square works best.

In your Google Business profile: Ask for reviews → copy the link.

That does not look like a Google review link. Without that exact link, the QR code cannot jump straight to leaving a review.

Tracking Analytics

Optional. Measures visits to the page your code opens.

That does not look like a GA4 ID. Expected format: G-XXXXXXXXXX.

Optional. Lets you build audiences from people who scan.

A Facebook Pixel ID is 9 to 16 digits, nothing else.

Optional. Loads your tag container on the landing page.

That does not look like a Tag Manager ID. Expected format: GTM-XXXXXXX.

Only you see this. It is never shown to people who scan.

Main destination Add essential information

That does not look like a valid URL. It has to be a real web address (e.g. https://example.com).

By language (optional)
Language rules

Add one rule per language you want to send somewhere different. As many as you need.

By device (optional)

That does not look like a valid URL. It has to be a real web address (e.g. https://example.com).

That does not look like a valid URL. It has to be a real web address (e.g. https://example.com).

By time of day (optional)

Enter the time in 24-hour format, HH:MM (e.g. 20:00).

Enter the time in 24-hour format, HH:MM (e.g. 23:00).

The window may cross midnight (22:00 to 06:00).

That does not look like a valid URL. It has to be a real web address (e.g. https://example.com).

Tracking Analytics

Optional. Measures visits to the page your code opens.

That does not look like a GA4 ID. Expected format: G-XXXXXXXXXX.

Optional. Lets you build audiences from people who scan.

A Facebook Pixel ID is 9 to 16 digits, nothing else.

Optional. Loads your tag container on the landing page.

That does not look like a Tag Manager ID. Expected format: GTM-XXXXXXX.

Only you see this. It is never shown to people who scan.

Information Add essential information

In Google Maps: Share → Copy link.

That does not look like a valid URL. It has to be a real web address (e.g. https://example.com).

Only you see this. It is never shown to people who scan.

Information Add essential information

That does not look like a phone number. Use digits only (with the international + prefix if needed), no letters: e.g. +1 555 000 0000.

Only you see this. It is never shown to people who scan.

Information Add essential information

In the group: name → Invite via link.

That does not look like a WhatsApp group invite link. It has to start with chat.whatsapp.com, or people will not be able to join.

Only you see this. It is never shown to people who scan.

Information Add essential information

In Telegram: profile, group or channel → Share → Copy link.

That does not look like a Telegram link. It has to start with t.me/, or the app will not know which chat or channel to open.

Only you see this. It is never shown to people who scan.

Information Add essential information

In Spotify: Share → Copy link.

That does not look like a Spotify link. It has to start with open.spotify.com, or Spotify will not know which song, album or playlist to open.

Only you see this. It is never shown to people who scan.

Information Add essential information

For Lightning, paste a lightning: address or an invoice (lnbc...).

In the coin itself, not in euros or dollars. Leave empty for a fixed Lightning invoice.

That amount is not valid. Use numbers only, with a dot or comma for decimals (e.g. 0.001).

Only you see this. It is never shown to people who scan.

Information Add essential information

Exactly as it appears on the bank account. Up to 70 characters.

The account that receives the money. Spaces are ignored.

That does not look like a valid IBAN. It starts with 2 country letters and 2 numbers (e.g. ES91...); check it against the one your bank gave you.

Leave it empty and whoever scans types the amount. Between 0.01 and 999999999.99.

That amount is not valid. Use numbers only, with up to 2 decimal places (e.g. 25.00).

What the payment is for. It travels with the transfer.

Only needed for banks outside the euro area.

That does not look like a valid BIC/SWIFT code. It is 8 or 11 characters (letters and numbers); find it in your bank account details.

Only you see this. It is never shown to people who scan.

Information Add essential information

In your Facebook page: Settings → Messenger → m.me link.

That does not look like a Messenger link. It has to start with m.me/, or the app will not know who to open the chat with.

Only you see this. It is never shown to people who scan.

Information Add essential information

Copy the link from your Instagram profile (⋯ → Copy profile link).

That does not look like an Instagram link. It has to include instagram.com/, or your profile will not open.

Only you see this. It is never shown to people who scan.

Information Add essential information

That does not look like a Zoom, Meet or Teams link. Check it before saving.

Only you see this. It is never shown to people who scan.

Information Add essential information

That does not look like a common booking link (Calendly, Cal.com...). If yours is different, ignore this.

Only you see this. It is never shown to people who scan.

Information Add essential information

JPG, PNG or WEBP. It shows on the tag page.

That does not look like a phone number. Use digits only (with the international + prefix if needed), no letters: e.g. +1 555 000 0000.

That does not look like an email address. It needs an @ and a domain, e.g. name@example.com.

3. Design your QR code

One-click templates A full design in one tap

Templates set the pattern, colors, corners and frame. You can fine-tune anything afterwards.

Frames A frame with a call to action
Frames
Standard
Beauty
Food and menus
Entertainment
Community
Events
Shopping

Shrinks automatically until it fits.

Pattern Shape of the dots inside your code
Pattern

Decorative patterns raise error correction to Q automatically (H with a logo): the shapes eat scan margin. You can lower it by hand; the scan check below has the final say.

Corners
Corner square
Corner dot
Colors
18 %

A soft watermark behind the pattern. The scan check runs on the final result.

GIF or short video. Downloads as an animated GIF, and every single frame has to pass the scan check.

Works with Square, Dots, Rounded and every figure pattern.

Top left
Top right
Bottom left

Current contrast: . Below 3:1 many phone cameras stop reading the code.

Gradient
Gradient type

Linear gradient only.

Logo Your logo inside the code

PNG, JPG, WEBP or SVG. It stays in your browser, nothing is uploaded.

No logo

Or pick a ready-made icon

30 %

Share of the code width (0.1 to 0.5).

6 px

Measured on the export size.

Error correction, margin and size

H survives more damage (stains, folds, a logo on top) but packs more dots: print it bigger.

20 px

Measured on the export size. At zero, many readers fail.

Affects PNG, JPG and WEBP. SVG is vector and scales losslessly.

Anyone opening the link gets this exact design pre-loaded.

Bulk creation (CSV) One ZIP, many codes

One row per code: name,https://... Up to 200 rows. Every code uses the design above and passes the scan check; unreadable rows are skipped and reported.

API not connected yet. Beta. The AI paints your style over the REAL code you have configured. Every result passes the same scan check as the rest: if it does not read, it does not download.

The content never changes: AI only affects the look.