A UUID (Universally Unique Identifier) is a 128-bit number used to uniquely identify information in computer systems. It is widely used to ensure uniqueness across different databases, systems, and networks without a central coordinating authority.
This is an example of a valid UUID: 61dab95b-179f-4ccf-a7c7-cc41e2983891
In its essence a UUID is a 128-bit number, which can be represented in a number of ways. The canonical way to represent a UUID is as five hexadecimal numbers separated by hyphens, giving a total of 36 characters (32 hex digits and 4 hyphens)
The UUID specification allows applications to generate custom UUIDs based on their specific needs. The only hard requirement is that the version and variant bits must be present and conform to the UUID specification. UUID version 8 is reserved for such custom UUID implementations.
Picking the right UUID version depends on the exact requirements in each specific use case. Keep in mind that the words "version" is a bit misleading when we talk about UUIDs, because UUID version are more like different types of UUID and not a succession where e.g. version 5 is an upgrade over versions 4 or 3. Find out more about different UUID versions here: Version 1, Version 3, Version 4, Version 5, Version 6, Version 7
Find out how to generate UUIDs in your favorite language here: Bash, Groovy, Kotlin, Python, Scala, Clojure, ClojureScript, Java, JavaScript, or return to Online UUID Generator