Bulk UUID Generator
Set the count, click regenerate, export. Up to 10,000 UUIDs per batch, CSV or JSON download.
Show all 0
Common bulk use cases
- Test fixtures. Seed a few thousand rows into a dev database.
- Load testing. Generate the input file for a script that hits an API with N unique IDs.
- Migrations. Pre-allocate UUIDs for records that don't have them yet, in a deterministic order.
- Spreadsheets. Paste a column of unique IDs into Google Sheets or Excel.
CSV format
uuid
0e6f1b8c-2c33-4f1f-9c0b-2a3d4e5f6a7b
3a1b2c3d-4e5f-6a7b-8c9d-0e1f2a3b4c5d
... JSON format
[
"0e6f1b8c-2c33-4f1f-9c0b-2a3d4e5f6a7b",
"3a1b2c3d-4e5f-6a7b-8c9d-0e1f2a3b4c5d"
] Tip: pick v7 for keys you'll insert in time order
If the bulk UUIDs become primary keys for sequentially-inserted rows, switch the version to v7. You'll get faster inserts and meaningful sort order out of the box.
Generating in your application code
For server-side bulk generation (CI seed data, load-test fixtures, backfill scripts), generate from your application code rather than pasting from a browser. The standard libraries are tiny and fast:
// JavaScript / Node — ~1M UUIDs/sec on a single core
import { v4 } from "uuid";
const ids = Array.from({ length: 10000 }, () => v4());
// Python — ~500k/sec, faster with uuid-utils (Rust)
import uuid
ids = [str(uuid.uuid4()) for _ in range(10000)]
// Postgres — bulk INSERT with generated values
INSERT INTO orders (id) SELECT gen_random_uuid()
FROM generate_series(1, 10000); Common pitfalls
- Don't assume order. v4 UUIDs come out in random order. If you need bulk + sortable, generate v7 instead.
- CSV with non-UUID columns. If your spreadsheet has more than one column, this tool's CSV won't fit — paste the UUIDs into a column manually, or generate them in code where you control the format.
- 10,000 isn't a hard limit. The browser can handle more, but rendering 100K rows in
<pre>stalls the page. The cap is a UX safeguard, not a real limit. For more, generate in code. - Don't use bulk UUIDs as security tokens. A signed token is more compact and includes expiry. Bulk UUIDs are for identity, not auth.
Performance notes
All UUIDs are generated client-side with the browser's
crypto.getRandomValues(), which is the OS-level CSPRNG.
Generating 10,000 UUIDs typically takes 50–100 ms; the slowest part is
rendering the result in the page. Downloads are streamed via blob URLs,
so memory usage stays small even for large batches.
API for higher volumes
If you need to generate UUIDs from a server (for example, in a CI pipeline that doesn't have access to a browser), we're working on a paid API. Drop your email below to be notified when it launches.
FAQ
How many UUIDs can I generate at once?
Up to 10,000 per click. Generation is client-side, so the only limit is your browser's memory and how long you're willing to wait — even at 10,000 it's typically well under 100 ms.
Can I export to CSV or JSON?
Yes — both. The CSV is a single-column file with header uuid; the JSON is a flat array of strings. Both download via a generated blob URL with no server round-trip.
Is there an API for this?
Not yet. We're planning a paid endpoint for high-volume server-side use (CI seed data, load-test fixtures). Drop your email below if you want early access.
What if I need millions?
Generate them in your application code with the uuid package — it's tiny (~3 KB) and runs at >1M UUIDs/sec on a single core. This tool is sized for the 'I need a few thousand for a CSV' use case.