Gerador de Nano ID
Gere em massa, diretamente no navegador, identificadores únicos, curtos e seguros para URL. Escolha livremente o conjunto de caracteres (padrão, alfanumérico, minúsculas, maiúsculas, dígitos ou hexadecimal) e o tamanho — ideal quando você precisa de algo mais curto que um UUID.
Comparação de formatos de ID
| Formato | Tamanho | Tamanho do alfabeto | Ordenável pela ordem de criação | Descrição |
|---|---|---|---|---|
| Nano ID | 21 caracteres por padrão (configurável de 1 a 64) | 64 caracteres | Não (totalmente aleatório) | Um ID curto e aleatório composto apenas por caracteres seguros para URL. O alfabeto e o tamanho podem ser configurados livremente. |
| UUID v4 | 36 caracteres (incluindo 4 hifens) | 16 caracteres (hexadecimal) | Não (totalmente aleatório) | Um identificador de 128 bits padronizado na RFC 9562. A notação hexadecimal separada por hifens é o formato padrão. |
| ULID | 26 caracteres | 32 caracteres (Base32) | Sim (os primeiros 10 caracteres são um timestamp) | Começa com um timestamp de precisão de milissegundos, permitindo ordenar os ID como strings pela ordem de criação. |
Dicas
- O Nano ID é gerado com aleatoriedade criptograficamente segura via Web Crypto API e processado inteiramente no seu navegador — nada é enviado aos servidores do toolbase.cc.
- O alfabeto padrão de 64 caracteres (
A-Za-z0-9_-) não contém símbolos nem espaços, por isso é seguro usá-lo diretamente em caminhos de URL ou nomes de arquivo. - Restringir o alfabeto a somente dígitos ou hexadecimal permite gerar ID compatíveis com formatos de sistemas existentes (por exemplo, números de pedido que são apenas dígitos).
- Quanto mais curto o ID, maior a probabilidade de colisão. Sistemas que emitem muitos ID devem manter-se perto dos 21 caracteres padrão, enquanto pequenos conjuntos de teste podem ser suficientes com 8 a 10 caracteres.
- Aumente a quantidade e use "Copiar tudo" para gerar rapidamente dados de teste ou dados iniciais (seed) em massa.
Perguntas frequentes
Curiosidade — Por que o Nano ID pode ser mais curto que um UUID
O Nano ID é uma biblioteca JavaScript de geração de ID lançada em 2017 por Andrey Sitnik, o desenvolvedor do PostCSS. Apesar de não ter dependências e ser minúscula (apenas algumas centenas de bytes de código), o uso de aleatoriedade criptograficamente segura lhe deu reconhecimento, e hoje acumula dezenas de milhões de downloads semanais no npm.
A brevidade de um ID depende de quantos caracteres distintos seu alfabeto possui. Um UUID usa apenas dígitos hexadecimais (16 símbolos) para codificar 128 bits, exigindo 36 caracteres. O Nano ID usa 64 símbolos, por isso consegue condensar uma quantidade comparável de aleatoriedade (126 bits por padrão) em apenas 21 caracteres. A razão é que cada caractere carrega mais informação (log₂64 = 6 bits contra log₂16 = 4 bits do hexadecimal).
A configuração padrão (21 caracteres, alfabeto de 64 símbolos) oferece cerca de 126 bits de aleatoriedade, praticamente equivalente aos 122 bits do UUID v4. Usando a aproximação do problema do aniversário, seria necessário gerar cerca de 1,09×10¹⁹ ID antes que a probabilidade de colisão chegue a 50%, então na prática há pouco a se preocupar.