StableDeliver

StableDeliver · Free tool

License key generator

Generate a batch of random, hard-to-mistype licence keys for your software, plugin, theme, or course — then paste them into whatever delivers them. Free, no signup.

This tool runs entirely in your browser. Nothing you type or generate is sent to StableDeliver's servers. Keys are created with your browser's cryptographic random number generator and never leave this page — close the tab and they're gone, so download them before you navigate away.

1–5000 per batch.

Letters, numbers and dashes. Handy for telling products apart.

Shape: XXXX-XXXX-XXXX-XXXX — about 1024 possible keys, from a 32-character alphabet with no I, O, 0 or 1, so nobody mistypes one for another.

Next step
Sell these keys for USDT, hands-off →
StableDeliver holds the pool, verifies the payment on-chain, and hands the buyer exactly one key — so you're not emailing them at 2am.

You just did this by hand.

StableDeliver does all of it automatically — a crypto checkout on your own site that verifies the payment on-chain and delivers the product the second it confirms, while you sleep.

What makes a licence key good

Three things, and only one of them is length. It has to be unguessable, so it comes from a cryptographic random source rather than a counter or a hash of the order number — otherwise someone who buys one key can work out the next. It has to be readable, because keys get copied off invoices, screenshots and support chats; dropping I, O, 0 and 1 removes most mistyping. And each one has to be issued once — which is a delivery problem, not a generation problem.

The default here is four blocks of four, which is about 1024 possibilities. Guessing one at random is not a realistic attack. Reusing one you already sold is.

Generating keys is the easy half

The hard half is making sure each key goes to exactly one paying buyer, and that a buyer who refreshes the page or pays twice doesn't end up with two. If you're handing keys out by hand you also have to check the payment actually arrived, on the right network, for the right amount — see the payment verifier for the manual version of that, or why manual verification gets old.

StableDeliver does that part: you upload a pool of keys, and when a payment for that product confirms on-chain it releases one key to that buyer and marks it used. Related: selling licence keys for USDT, WooCommerce, and Easy Digital Downloads.

FAQ

Are these keys stored anywhere? No. They are generated in your browser and exist only on this page. Nothing is sent to StableDeliver's servers, and we could not show you a key you generated here even if you asked us to. Download them before closing the tab.

Are they random enough? They come from crypto.getRandomValues, your browser's cryptographic random number generator — the same class of source used for session tokens. Not Math.random.

Can two keys come out the same? At the default length that is vanishingly unlikely, and each batch is de-duplicated before it's shown. Across separate batches you should still let whatever stores them enforce uniqueness.

Will these work with my licensing system? They're plain text strings, so anything that accepts a list of keys will take them — a WordPress licensing plugin, a spreadsheet, or a StableDeliver key pool. They carry no embedded signature or expiry, so a system that validates keys offline by checking a signature needs its own format instead.

Is a prefix a good idea? It helps you tell products apart in support tickets. It adds no security, because it's predictable by design.