{"templateId":"markdown","sharedDataIds":{"sidebar":"sidebar-web3/sidebars.yaml"},"props":{"metadata":{"markdoc":{"tagList":[]},"type":"markdown"},"seo":{"title":"UNS vs CNS Comparison","description":"The developer documentation portal and API reference for Unstoppable Domains.","siteUrl":"https://docs.unstoppabledomains.com","keywords":"unstoppable domains developer portal, api reference docs","lang":"en-US","llmstxt":{"hide":false,"sections":[{"title":"Table of contents","includeFiles":["**/*"],"excludeFiles":[]}],"excludeFiles":[]}},"dynamicMarkdocComponents":[],"compilationErrors":[],"ast":{"$$mdtype":"Tag","name":"article","attributes":{},"children":[{"$$mdtype":"Tag","name":"Heading","attributes":{"level":1,"id":"uns-vs-cns-comparison","__idx":0},"children":["UNS vs CNS Comparison"]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"high-level-differences-between-cns-and-uns","__idx":1},"children":["High Level Differences between CNS and UNS"]},{"$$mdtype":"Tag","name":"div","attributes":{"className":"md-table-wrapper"},"children":[{"$$mdtype":"Tag","name":"table","attributes":{"className":"md"},"children":[{"$$mdtype":"Tag","name":"thead","attributes":{},"children":[{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"CNS"},"children":["CNS"]},{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"UNS"},"children":["UNS"]}]}]},{"$$mdtype":"Tag","name":"tbody","attributes":{},"children":[{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Implements the ERC721 standard"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Implements the ERC721 standard"]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Hosts a single .crypto domain ending"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Hosts multiple domain endings"]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Separate resolver and registry contracts"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Single contract contains both the registry and resolution data"]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Requires a Resolver lookup call in order to resolve domain data"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Does not require a Resolver (RecordStorage) lookup call since all domain data stored in a single smart contract"]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Domain minting governed by MintingController and WhitelistedMinter"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Domain minting governed by MintingManager"]}]}]}]}]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":3,"id":"simplified-architecture","__idx":2},"children":["Simplified Architecture"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Overall, the main difference between CNS and UNS is that UNS has a simplified architecture which is optimized for higher volumes of transaction and supporting multiple domain endings."]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":3,"id":"easier-data-retrieval","__idx":3},"children":["Easier Data Retrieval"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["The next difference is that unlike CNS, UNS doesn’t have separate resolver contracts for domains."]},{"$$mdtype":"Tag","name":"ul","attributes":{},"children":[{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Resolution data is stored within the registry itself which allows retrieving data in a single smart contract call."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["This change removes unnecessary events and functions that were used for setting custom resolvers, thus improving optimizations."]}]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":3,"id":"simplified-minting-control","__idx":4},"children":["Simplified Minting Control"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Another major change in UNS when compared to CNS is simplified minting control. While CNS is controlled by two smart contracts, UNS has a simpler MintingManager that combines functionality of the old MintingController and WhitelistedMinter."]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":3,"id":"more-resources","__idx":5},"children":["More Resources"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["For a detailed list of breaking changes in UNS, see ",{"$$mdtype":"Tag","name":"a","attributes":{"href":"https://github.com/unstoppabledomains/uns#backward-incompatibility"},"children":["https://github.com/unstoppabledomains/uns#backward-incompatibility"]},"."]}]},"headings":[{"value":"UNS vs CNS Comparison","id":"uns-vs-cns-comparison","depth":1},{"value":"High Level Differences between CNS and UNS","id":"high-level-differences-between-cns-and-uns","depth":2},{"value":"Simplified Architecture","id":"simplified-architecture","depth":3},{"value":"Easier Data Retrieval","id":"easier-data-retrieval","depth":3},{"value":"Simplified Minting Control","id":"simplified-minting-control","depth":3},{"value":"More Resources","id":"more-resources","depth":3}],"frontmatter":{"title":"UNS vs CNS Comparison | Unstoppable Domains Developer Portal","description":"This page provides a high level overview of the differences between UNS and CNS.","seo":{"title":"UNS vs CNS Comparison"}},"editPage":{"to":"https://github.com/unstoppabledomains/dev-docs/blob/main/web3/smart-contracts/overview/cns-uns-comparison.md"},"lastModified":"2026-04-10T16:45:57.000Z","pagePropGetterError":{"message":"","name":""}},"slug":"/web3/smart-contracts/overview/cns-uns-comparison","userData":{"isAuthenticated":false,"teams":["anonymous"]},"isPublic":true}