BLE UUID Generator
Generate random UUIDs for BLE services and characteristics. UUID v4 with formatted and raw output. Bulk generate and copy. Free.
Options
Formatted is canonical for GATT files. BLE Short expands a 16-bit ID against the Bluetooth Base UUID.
Short ID replaces bytes 2-3 in the Bluetooth Base UUID
Generated UUIDs
Click Generate to create UUIDs
History (last 10)
How to Use
-
1
Choose your output format
Pick the canonical 8-4-4-4-12 dashed form for GATT service files, the raw 32-character form for binary contexts, or the BLE 16-bit short UUID variant for SIG-allocated services.
-
2
Set the bulk count and case
Use the count input or 1 / 5 / 10 preset buttons to generate up to 50 UUIDs at once, and toggle uppercase or lowercase to match your project conventions.
-
3
Copy what you need
Click any UUID to copy a single value, use Copy All to grab the whole batch, or pull from the History panel which keeps the last 10 generated UUIDs even after re-rolling.
About
Universally Unique Identifiers (UUIDs) are 128-bit values standardised by RFC 4122 and incorporated into ISO/IEC 9834-8. They were created to give software systems a way to label objects across machines without a central authority — a problem that became urgent in the 1980s when distributed object frameworks like Apollo NCS and DCE/RPC needed globally unique interface identifiers. The 128-bit width is large enough that values generated independently on different machines are extraordinarily unlikely to collide.
RFC 4122 defines five UUID versions. Version 1 derives the value from the host MAC address and a 60-bit timestamp; version 2 is a DCE Security variant; versions 3 and 5 hash a name inside a namespace using MD5 and SHA-1 respectively; version 4 fills the value with random bits. Six bits are reserved for version (4 bits) and variant (2 bits), leaving 122 bits of entropy for v4. The canonical text representation is 32 hexadecimal digits grouped 8-4-4-4-12 with hyphens, lowercased by default.
Bluetooth Low Energy adopted UUIDs as the identifier for every GATT service, characteristic, and descriptor. The Bluetooth Base UUID 00000000-0000-1000-8000-00805F9B34FB lets short 16-bit and 32-bit identifiers expand into the full 128-bit space, so SIG-assigned services fit into compact advertising packets. Vendor services that are not in the assigned numbers registry must use fully random 128-bit UUIDs — generated with a v4 RNG — to be safely unique. This generator uses the Web Crypto API (crypto.randomUUID with a getRandomValues fallback) so every value is produced locally in your browser; nothing is sent to a server.