Generate UUID v4, v1 and v7

Choose v4 for random IDs or v1/v7 for an embedded timestamp. Generate up to 100 IDs per batch, copy or download TXT, and inspect their structure on the page.

Choose a version and generate IDs

Results

Select “Generate UUID” to start

UUID Inspector

Inspect UUID structure

Paste a UUID or select a result above to inspect its version and fields.

Waiting for UUID

Accepts hyphenated, 32-character, URN and braced UUIDs.

v4

Random

Uses random data from Web Crypto; choose it when the ID does not need a timestamp.

v1

Timestamp

Contains a timestamp and a random node; avoid it if the creation time must be hidden.

v7

Unix time

Starts with Unix time for millisecond-level sorting. IDs created in one millisecond are not guaranteed to follow creation order.

Recent history

Generate and inspect UUIDs

01

Choose a version and quantity

Use v4 for a random identifier, or v1/v7 when your application needs an embedded timestamp. Select 1–100 IDs, a format and letter case before generating.

Choose the right UUID version

All three versions produce 128-bit identifiers. They differ in where random data and time appear; use the inspector above to check a generated ID.

NeedChooseWhat to check
ID without creation timev4Uses the browser’s random source.
Application requires UUID v1v1Includes a timestamp; this tool uses a random node, not your MAC address.
Sort by millisecondv7Starts with a Unix timestamp; IDs within one millisecond may not sort by creation order.

Check results and formats

No hyphens in the result
You selected the 32-character format. Choose hyphenated or URN if the receiving system requires it; the 128-bit value is unchanged.
History shows only part of a batch
History keeps only the 10 most recent IDs in this browser. Use Copy all or Download TXT to keep the full batch before leaving.
Inspector rejects an ID
Check for 32 hexadecimal characters. The inspector accepts hyphenated, compact, URN and braced forms; other characters are rejected.
Timestamp order looks unexpected
v7 records milliseconds; IDs created within one millisecond use random bits. v1 is also not designed to sort lexically by creation time.

Storage and limits

The tool generates and inspects UUIDs with JavaScript in your browser. When you select Generate UUID, up to 10 recent IDs are saved in this browser’s localStorage; Clear history removes them. UUIDs are identifiers, not authentication tokens or secrets.

Comments & feedback

Rate this tool

Loading ratings…

Write a commentNo account needed

Do not share passwords, sensitive information or the contents of files you are processing.

Reviewed before posting. Email stays private.

Embed this tool on your websiteFree · Copy once, receive tool updates automatically

Paste the iframe into HTML, WordPress or any platform that supports embeds. The tool runs in the visitor’s browser; adjust its height and theme as needed.

View the embed guide and supported platforms →

<div style="max-width:900px">
  <iframe data-kitotool-embed src="https://kitotool.com/embed/en/uuid-generator/" title="UUID Generator — KitoTool" width="100%" height="1050" style="display:block;width:100%;border:1px solid #dbe3ee;border-radius:12px" loading="lazy" referrerpolicy="strict-origin-when-cross-origin"></iframe>
  <p style="margin:6px 2px 0;text-align:right;font:12px/1.5 system-ui,sans-serif;color:#64748b">Free tool by <a href="https://kitotool.com/en/uuid-generator/" target="_blank" rel="nofollow noopener noreferrer" style="color:#2359d4;text-decoration:underline">KitoTool</a></p>
</div>

The code includes a visible credit below the iframe; its link uses nofollow for a widely distributed widget.

Optional: automatically resize the iframe

Add this script once to the page containing the iframe.

<script>
(function(){var origin="https://kitotool.com";function frames(){return document.querySelectorAll("iframe[data-kitotool-embed]")}function measure(f){if(f.contentWindow&&new URL(f.src).origin===origin)f.contentWindow.postMessage({type:"kitotool:measure"},origin)}window.addEventListener("message",function(e){if(e.origin!==origin||!e.data||e.data.type!=="kitotool:resize"||!Number.isFinite(e.data.height))return;frames().forEach(function(f){if(f.contentWindow===e.source&&new URL(f.src).origin===origin)f.style.height=Math.max(320,Math.min(12000,Math.ceil(e.data.height)))+"px";});});function connect(){frames().forEach(function(f){f.addEventListener("load",function(){measure(f)});measure(f)})}if(document.readyState==="loading")document.addEventListener("DOMContentLoaded",connect,{once:true});else connect()})();
</script>