Step 1
Choose your content type
Open the generator on this page and choose what the code should link to, such as a URL, PDF, or menu.

QRStuff
A dynamic QR code stores a short redirect link instead of your final destination, so you can change where the code points after it has been printed and see how often it is scanned. QRStuff creates dynamic codes in the generator below: enter your destination, style the code, download it, and edit or track it later from your dashboard. Static codes are also available and are free to create, download, and use forever, but they cannot be edited or tracked once printed.
Rated 4.8 by 250k+ happy customers · Free static QR codes available
Creating a dynamic code takes about a minute, and you can change the destination later without reprinting anything.
Step 1
Open the generator on this page and choose what the code should link to, such as a URL, PDF, or menu.

Step 2
Switch the code type to dynamic so QRStuff issues a short redirect link instead of encoding the destination permanently.

Step 3
Enter your destination and give the code a name you will recognize in your dashboard later.

Step 4
Upload your logo, set the foreground and background colors, and pick a shape, then check the code still scans cleanly at the size you plan to print.

Step 5
Download the code as a PNG, SVG, or PDF and keep the file. To change where it points, edit the destination in your dashboard and the printed code keeps working.

The practical difference is whether you can change your mind after the code is printed.
| Static QR code | Dynamic QR code | |
|---|---|---|
| Destination after printing | Fixed permanently | Editable any time |
| Scan tracking | None | Scans by date, device type, and location |
| What the code encodes | Your content directly | A short redirect link |
| Reprint needed to change | Yes | No |
| Typical use | One-off links, WiFi details, personal cards | Packaging, menus, campaigns, events, field assets |
| Cost | Free to create, download, and use forever | Included in paid plans, see pricing |
If the destination will never change and you do not need scan data, a static code is the simpler choice. If the code is going on something expensive to reprint, dynamic is usually worth it.
A dynamic QR code does not have to look generic. In the generator above you can upload your logo, set the foreground and background colors to match your brand, and choose the shape of the modules and corner markers. Keep the contrast strong and leave the quiet zone clear, because a code with a pale foreground on a busy background is the most common reason a design fails to scan.
Test the design before you commit to it. Scan the preview with the camera app on both an iPhone and an Android phone at the size you plan to print, and add a short instruction near the code so people know what they get by scanning it.
When the design is right, download the code in the format that suits the job. PNG is the safe choice for screens and social posts. SVG and PDF are vector files that stay sharp at any size, so use those for packaging, posters, and anything going to a commercial printer. Because the code is dynamic, the file you download stays valid even after you change the destination - you do not need to download a new one.
Because the printed pattern points at a redirect rather than at your content, you can update the following without touching the artwork: the destination URL, the file behind a PDF or menu code, the landing page for a campaign, and where different regions or stores are sent. The code itself stays valid as long as your plan keeps the redirect active.
Every scan of a dynamic code is recorded, so you can see total scans, when they happened, the device type, and approximate location. That is enough to tell which poster, pack, or table tent is actually working. For the full reporting view, including campaign-level comparisons and how to tag links, see QR code analytics and scan tracking.
Dynamic codes earn their keep whenever reprinting is expensive or slow. Common cases are product packaging and labels, printed menus that change with the seasons, event signage and tickets, property and vehicle signage, equipment and asset tags, and any campaign where you want to know whether the print run did anything. If you are putting a code on something you will not easily get back, print a dynamic one.
If you need hundreds or thousands of codes, you can generate them in bulk rather than one at a time, and generate them programmatically through the QRStuff API so codes are created as part of your own workflow. Teams that need seats, roles, single sign-on, and support can run this through QRStuff Enterprise.
Build it above, edit the destination whenever you need to, and keep the same printed code.