Digital menus in restaurants
One desk stand per table linking to the menu. Wipe it clean with a cloth, it never creases and it survives a whole season outdoors.
Free · no sign-up · everything in your browser
Design your QR code, choose a keychain, a desk stand or a wall plaque, and download it ready for your 3D printer — with both colours already inside the file.
A website, a link to your Google reviews, your Instagram or plain text all work. If you type a bare domain we add https:// for you.
Whoever scans the code joins the network without typing anything. Perfect for holiday lets and hotels.
Type something above to see your code.
These two colours are also the ones used for the 3D object: the background becomes the base and the code becomes the relief.
You can add an emoji or a logo, not both. When you add one we raise the code's error correction.
A 38° wedge: prints without supports and stands up to be read on a table.
Preparing the 3D preview…
Drag with the mouse to spin the object. Scroll to zoom.
100% private. Your link, your wifi password and your logo are processed on your device. They are never uploaded to a server and never stored.
Honest limits: the 3D files are generated in your browser, so a very long code at maximum size may take a few seconds on an old phone. The 3D preview needs WebGL; if your device doesn't have it, every download still works. And the 3MF carries two colours, but your slicer is the one that decides how to print them.
Three steps, no sign-up and nothing to install.
Your restaurant menu, your Google reviews page, your Instagram or your wifi details. The code is drawn as you type.
Pick the dot shape, the two colours and drop your logo or an emoji in the centre. We tell you if the combination won't scan.
PNG and SVG for stickers or signage, and a 3MF file with both colours inside for your 3D printer. Open it in your slicer and go.
A paper QR code gets wet, peels off and tears. A 3D printed one stays exactly where you put it.
One desk stand per table linking to the menu. Wipe it clean with a cloth, it never creases and it survives a whole season outdoors.
The classic that works best: a stand on the bar or next to the till linking straight to your business profile. No need to ask out loud.
Keychains with a QR to the shared photo gallery, the gift registry or the running order. A keepsake that's actually useful.
Airbnb, guest houses, coworking spaces: a plaque next to the router with the wifi. Guests scan and connect without typing the password.
A keychain with your website or LinkedIn weighs almost nothing, feels good in the hand and ends up in a pocket rather than a bin.
A wall plaque in the fitting room or by the window with your Instagram, TikTok or online shop. Two screws or double-sided tape and it's up.
Weatherproof plaques with audio guides, plant labels for a botanical garden or the map of a walking route.
A plaque screwed to the machine with the manual, the service history or the serial number. It won't peel off and it won't rub out.
A 3D printed QR code isn't read by its relief: it's read by colour contrast. Your phone camera sees a flat image and needs to clearly tell the dark modules from the light background. That's why this tool doesn't export a single monochrome part, but a 3MF file with two objects and two colours stored inside: the base in one colour and the raised code in another. When you open that file in Bambu Studio, PrusaSlicer, Orca Slicer or Cura, each part shows up separately and all you do is assign its filament.
Each little square of the code is called a module. With a standard 0.4 mm nozzle, a module under 1.5 mm comes out with rounded corners and the code starts to fail. Since the number of modules depends on how much text you put in, the practical rule has two halves: shorten the link (use the shortest possible URL, no tracking parameters) and make the part bigger. The tool calculates module size in millimetres as you move the slider and turns it red when you overshoot.
Between 0.8 and 2 mm of relief is plenty; 1.2 mm is the sweet spot. Taller doesn't scan better, it just takes longer. What does matter is that the base is opaque: if you print a light base with very few layers, light passes through the plastic and the real contrast drops. Three or four base layers are enough.
You don't need a multi-colour printer. Because the relief starts exactly where the base ends, you can insert a filament-change pause at that layer from your slicer: print the base in white, swap to black and carry on. The result is identical. If you'd rather split it completely, the STL download gives you the two parts as separate files.
The desk stand is a 38° wedge: it prints without supports because the code face points upwards, and it has a small front lip so it doesn't end in a knife edge. This is the format for restaurant menus and review signs. The keychain is a 3 mm plate with a hole for the ring; it works well at events and as a business card. The wall plaque is a 3.2 mm plate with two holes at the top for hanging or screwing it up.
Scan the preview with your own phone. If it reads on screen it will almost certainly read once printed; if it doesn't read on screen, plastic won't fix it. And if you've put a logo in the centre, print one test piece before committing to a batch: the logo covers modules and, even though we automatically raise error correction to the maximum, it's worth checking with the real object in your hand.
Yes, as long as there is real contrast between the two colours and the modules are big enough. Your phone camera doesn't read the relief, it reads the colour difference between the background and the code. That's why the file is exported in two colours and the tool warns you live if contrast drops below 3:1 or if each module measures less than 1.5 mm.
Any home FDM printer will do. If it has a filament changer (Bambu Lab with AMS, Prusa with MMU) the 3MF file assigns both colours automatically. If it only has one extruder, you can insert a colour-change pause at the height of the base, or print the two parts separately and fit them together.
Yes, but you lose the contrast and many phones won't read it. The recommended option is a filament-change pause right where the base ends and the relief begins: almost every slicer lets you insert that pause at a specific layer. We also offer the STL download with the two parts separated, in case you'd rather print them in turns.
Yes. 3MF is the industry standard format and all four open it directly. The file contains two separate objects, each with its colour stored inside, so when you import it you'll see the base and the code as independent parts ready to assign filament to.
The rule of thumb is that each module (each little square of the code) should measure at least 1.5 mm. With a standard 0.4 mm nozzle, anything below that comes out with rounded corners and the code stops scanning. The tool calculates module size live and flags it in red if you go too small: the fix is to enlarge the piece or shorten the link.
Yes. You can upload an image or pick an emoji. For the 3D version the logo is automatically turned into a single-colour silhouette, because the relief prints in one filament. When you add a logo we raise the code's error correction to the highest level to make up for the covered modules.
Between 0.8 and 2 mm, with 1.2 mm as the sweet spot. Below 0.8 mm the colour change can look translucent; above 2 mm you just make the print longer without helping. What matters for scanning is colour, not depth.
No. Everything is generated inside your browser: the link, the wifi password, the image you upload and the 3D files. Nothing is sent to any server and nothing is kept when you close the tab.