The two questions a QR generator should answer and usually does not
Almost every free QR generator does the same thing. You paste a link, it draws a pattern, you download a PNG. What none of them tell you is whether that pattern will survive contact with a printer, or whether the scans can ever be counted. Both questions get answered on this page, above, while you are making the code.
The sizing one matters because a QR code is a grid of small squares, called modules, and the number of them is decided by how much data you are encoding. A short link needs a small grid. A long address with campaign parameters bolted on the end needs a much bigger one. Print both at the same physical width and the second one has far smaller squares, and small squares are the first thing a phone camera fails to resolve. This is why a code can look perfect on a screen and fail completely on a table tent.
How big to print it
The working rule in print is that a QR code scans from roughly ten times its own width. A code 40mm across is good for about 400mm, which is a person sitting at a table. A yard sign read from a car needs to be several hundred millimetres across, which is why the codes on estate agent boards are so much bigger than the ones on menus. Read the rule backwards to size anything: take the distance people will actually stand at, divide by ten, and that is your minimum width.
The second limit is the size of a single square. Below roughly 0.4mm, ordinary commercial printing starts to lose the pattern to ink spread and camera resolution, though the exact floor moves with the printing process and the material. The panel above works both numbers out for the address you entered and warns you when the width you picked pushes the squares under that floor.
One detail that catches people constantly: the four-module clear margin around the outside, the quiet zone, is part of the code. It is not decorative padding you can crop off to make the artwork tidier. Cropping it is one of the most common reasons a professionally printed code refuses to scan. The files this tool exports already include it.
Static and dynamic, explained without the sales pitch
A QR code does not do anything. It is a string of text drawn as a pattern of squares, and the string is almost always a URL. When a phone scans it, the phone reads the string and opens it. Nothing in that exchange touches whoever generated the code.
That single fact decides everything else. A static code holds your destination directly. It will work forever, needs no service to stay alive, and cannot be edited or counted, because the scan is a conversation between the phone and your site that nobody else is party to. A dynamic code holds a short redirect URL instead. Scanning it hits that redirect first, which records the hit and forwards the visitor on, which is what makes scans countable and the destination changeable after printing.
So when a generator offers to track scans of a code pointing at your own website, that is not what is happening. Either it is quietly wrapping your link in its own redirect, in which case your code now depends on that company continuing to exist and to keep the redirect working, or it is counting something else entirely. Being clear about which one you are getting is the whole decision, and it is why this page tells you which kind of code you just made rather than leaving it vague.
The failure nobody warns you about
A dynamic code is only as durable as the redirect behind it. If that service shuts down, changes its domain, or moves the link to a paid tier you stop paying for, every printed copy of that code becomes a dead end at once, and the pattern on the paper looks exactly as healthy as the day it was printed. There is no way to tell a working dynamic code from a broken one by looking at it.
The honest guidance follows from that. For something printed once, at scale, meant to last years, a static code pointing at a URL you control on a domain you own is the safer choice, and giving up tracking is the price. For anything you expect to change, seasonal menus, a listing that will sell, a campaign that will end, a dynamic code earns its dependency, and you should point it at a custom domain you own so you can move it if you ever need to.
Error correction, and what it costs
QR codes carry redundancy so they can still be read when part of the pattern is damaged, covered, or scuffed. There are four levels. L recovers from about 7% damage, M about 15%, Q about 25%, and H about 30%. The reason not to simply pick H every time is that the redundancy is stored as more modules, so a higher level makes the grid denser at the same printed size, which works directly against everything in the sizing section above.
M is the sensible default for most printing. Go to Q or H when part of the code will be covered, which is what happens when you drop a logo in the middle, or when it is going somewhere it will get handled, folded, or rained on. This tool raises the level for you automatically when you add a logo, because a logo punches a hole in the pattern and the code has to be able to lose that area and still decode.
Where Raydar fits, stated plainly
The generator above is free, unlimited, needs no account, and runs entirely in your browser. Nothing you type is sent anywhere. That is true whether or not you ever use anything else we make.
The one thing it cannot do, because no generator can, is count scans of a code that points at someone else's address. If you want that, or you want to change the destination after the thing is printed, the code has to point at a redirect. That is what a Raydar link is, and pointing this generator at one is all it takes. If you are weighing that up, QR codes for restaurant menus and QR codes on property signs both work through the decision in a specific setting, what counts as a QR code scan covers what a scan number really measures, and the QR generator comparison is honest about when a plain static code from anywhere else is the better answer.