A tiny (116 bytes), secure URL-friendly unique string ID generator

  • nanoid

Downloads in past


19,34944.0.06 months ago5 years agoMinified + gzip package size for nanoid in KB


Nano ID
alt="Nano ID logo by Anton Lovchikov" width="180" height="94">English | Русский | 简体中文 | Bahasa Indonesia
A tiny, secure, URL-friendly, unique string ID generator for JavaScript.
“An amazing level of senseless perfectionism, which is simply impossible not to respect.”

  • Small. 130 bytes (minified and gzipped). No dependencies.
Size Limit controls the size.
  • Fast. It is 2 times faster than UUID.
  • Safe. It uses hardware random generator. Can be used in clusters.
  • Short IDs. It uses a larger alphabet than UUID (A-Za-z0-9_-).
So ID size was reduced from 36 to 21 symbols.
  • Portable. Nano ID was ported
to 20 programming languages.
import { nanoid } from 'nanoid' = nanoid() //=> "V1StGXR8_Z5jdHi6B-myT"

Supports modern browsers, IE with Babel, Node.js and React Native.
alt="Sponsored by Evil Martians" width="236" height="54">


Read full docs on GitHub.