How to Create a QR Code for a URL
Make a scannable QR code for a landing page, campaign URL, menu, form, or event link.
Prepare and verify the final URL
Build the exact destination link before generating the code. Paste it into a browser, confirm the page loads as intended without a typo, check that any redirect ends on the intended page, and note whether recipients will need to sign in.
Example: create a campaign code
For a poster campaign, start with a clean landing URL such as https://example.com/summer. Add optional UTM parameters only when you need campaign reporting, then open the complete tagged URL and confirm it still reaches the correct landing page before generating the QR code.
Choose settings for the final placement
Long URLs contain more data and usually create denser codes, so use a clean URL or a redirect you control when possible. Export enough pixels for the final printed or on-screen size, keep strong contrast, and preserve the blank quiet zone around every edge.
- Do not place the code on a busy image or a similar-colored background.
- Do not crop, cover, or decorate the quiet zone.
- Choose the output size for the artwork where the code will actually appear, not only for the generator preview.
Troubleshoot scanning problems
Test the code again after every layout or URL change. A successful generator preview does not guarantee that the finished design will scan reliably.
- Preview scans but print does not: enlarge the code, improve contrast, restore the quiet zone, and check print sharpness.
- Code looks too dense: shorten the destination URL or use a controlled redirect, then generate a new code.
- Code opens the wrong page: verify the encoded URL, redirects, UTM parameters, and copied artwork before replacing the code.
Verify the finished artwork
Scan the code with several phones and camera apps. Test it at the final physical size and realistic viewing distance, then scan the final exported artwork or a production print instead of relying on the generator preview alone.
Open the related tool and keep the workflow local.