Bitcoin Name System

circle-info

Builder Resources

At a Glance

  • BNS is the live naming system on Stacks

  • Human-readable names like alice.id or muneeb.btc map to on-chain data

  • Names are SIP-009 compliant NFTs: transferable, tradeable, composable

  • Built-in marketplace for listing, buying, and selling names

  • Supports both open (unmanaged) and governed (managed) namespaces

  • Each address can own multiple names and designate a primary name

  • Fully implemented as Clarity smart contracts

  • The current BNS implementation uses the BNS V2 contract, deployed in September 2024. It succeeded the V1 contract from Stacks mainnet launch in 2021.


What is BNS?

The Bitcoin Name System (BNS) is a decentralized naming system built on Stacks and secured by Bitcoin. It enables human-readable names (e.g., alice.id) that map to on-chain identities, addresses, and arbitrary records.

Bitcoin Name Service (BNS) is a decentralized identity protocol that originally started on Bitcoin as Namecoin in 2014 before migrating to Bitcoin in 2015, and eventually Stacks when its mainnet launched in 2021.

That means BNS predates ENS by multiple years!

BNS is represented by the popular .btc namespace but has many others including .id, .locker, .app and more. Anyone can create a new namespace and have users register names within that. Currently there are 97 namespaces and over 360,000 names registered on BNS [as of March 2026]!

Top Namespaces [as of March 2026]
Names registered under the namespace

.btc

302,999

.stx

21,861

.app

12,445

.id

12,053

.stacks

3,961

The benefit of a BNS name is simple: Rather than sending crypto to a long STX or BTC address, you can use a human-readable name like muneeb.btc instead.

BNS names are compatible with Stacks wallets like Leather and Xverse and support both Stacks L2 and Bitcoin L1 for payments.

BNS replaces complex blockchain addresses with names that:

  • Can resolve to Stacks principals

  • Can store structured metadata

  • Names can store zonefiles containing profile data (bio, PFP, social links), wallet addresses across chains (BTC, ETH, etc.), subdomain definitions, and arbitrary key-value metadata. All stored on-chain via the zonefile-resolver contract.

  • Can integrate directly with smart contracts

  • Are owned and managed entirely on-chain

Stacks currently runs BNSv2, an upgraded implementation designed for improved composability, clarity, and developer ergonomics. It allows users to register, manage, and transfer names within different namespaces. It also introduces a native marketplace, managed namespaces with custom governance, multi-name ownership per address, primary name designation, and on-chain zonefile storage decoupled from the main contract.



Additional Resources

Last updated

Was this helpful?