0xSplits
A free, non-upgradable 'hyperstructure' for trustlessly splitting incoming ETH and ERC-20 revenue among recipients by preset percentages, which became default payment-splitting infrastructure for NFT and creator platforms.
▶ Run interactive simulation animated mechanism with editable parameters
How it works onchain
Summary
0xSplits (now branded "Splits") launched on Ethereum mainnet on February 15, 2022, built by Abram Dawson and Will Minshew. It is a protocol for creating "Splits": onchain accounts that divide any incoming ETH or ERC-20 revenue among a set of recipients according to preset percentage allocations. The founders explicitly framed it as a hyperstructure — non-upgradable, permissionless, with no protocol fee, designed to run "free and forever, without maintenance, interruption or intermediaries." Inspired in part by Mirror's early splits feature, 0xSplits generalized the idea into standalone, maximally composable infrastructure. It became the de facto payment-splitting layer for the NFT/creator economy (Zora, Sound.xyz, Transient Labs, and many others route collaborator and royalty payouts through it), was extended with Waterfalls, Vesting, Swapper, and Liquid Splits modules, and shipped a redesigned V2 in May 2024. The company behind it has since evolved into an "onchain banking for teams" product built atop the free protocol.
Design (Mechanism)
- Registry + proxy-per-split. A single canonical
SplitMaincontract (0x2ed6c4B5dA6378c7897AC67Ba9e43102Feb694EE, deployed at the same address across Ethereum and many EVM chains) stores split metadata and ETH/ERC-20 balance accounting. Each split gets its own lightweight proxy address so it can be plugged directly into any contract expecting a plain payable address — the key to composability with NFT contracts, royalties registries, and other splits (splits can nest inside splits). - Deterministic addresses. A split's address is derived from the hash of its recipients and percentage allocations, so integrators (e.g., Zora's 1155 SDK) can compute the payout address counterfactually before deployment.
- Percentage allocations. Recipients are assigned shares with fine-grained precision; allocations must sum to 100%. Funds accrue at the split address and are divided pro rata on distribution.
- Pull-payment accounting. Distribution credits each recipient's internal balance in
SplitMain; recipients (or anyone on their behalf) then withdraw. This separates the gas-heavy distribution step from individual withdrawal and reduces reentrancy surface. - Distributor fee incentive. Because distribution costs gas and someone must trigger it, split creators can set a distributor fee (0–10%, four decimal precision) paid to whichever address executes the distribution — a small keeper market that makes splits self-executing in practice without any protocol-run infrastructure.
- Mutable vs. immutable splits. A split may be immutable (trustless forever) or controlled by an address — including a contract or multisig — that can update recipients/percentages, enabling patterns like Liquid Splits, where allocations track NFT ownership. Control transfers use a two-step accept process.
- No fee, no token, no upgrades. The protocol charges nothing and has no admin upgrade path; the audited V1 contracts (audit PDF in the public repo) are a fixed public good. Later modules (Waterfall for tranched payouts, Vesting, Swapper for auto-converting revenue into a target token) compose around the same core.
Outcome
Ongoing, and canonical within its niche. Early traction was modest but real (by late March 2022, roughly 580 ETH and 16 ERC-20s had flowed through ~267 splits); adoption compounded as major creator platforms integrated it — Zora added a Splits feature and documents split payouts in its creator SDK, Sound.xyz used it for artist collaborations, and Transient Labs and many NFT studios use it for team royalty routing. The canonical SplitMain deployment still holds meaningful balances across chains (about $4.9M on Ethereum mainnet alone per explorer data, with additional balances on Optimism, Base, Blast, Polygon, and others). Splits V2 launched May 7, 2024 with a more flexible architecture. The company (Splits) pivoted its commercial layer toward "onchain banking" for teams — by end of 2025 reporting 100+ teams and $50M+ processed through the product — while the underlying protocol remains free. Cumulative all-time protocol volume figures: Unknown / not found from primary sources. Venture funding details: Unknown / not found from primary sources.
Why it worked
- Right abstraction, minimal surface. "An address that splits whatever hits it" is a primitive nearly every onchain business needs, and shipping it as a plain address made integration trivial — no SDK required for the basic case.
- Composability as a first-class goal. Deterministic proxy addresses, nestable splits, and contract-controllable mutability let platforms like Zora embed splits invisibly in their own flows.
- Credible neutrality. No fee, no token, non-upgradable, audited. Platforms could build on it without platform risk or rent extraction — the hyperstructure framing was a genuine adoption lever, not just marketing.
- Incentivized execution. The distributor fee solved the "who pays gas to push the money" problem endogenously, keeping the protocol truly serverless.
- Timing. It launched into the 2021–22 creator/NFT boom exactly when collaborative mints, music NFTs, and royalty sharing created demand for programmatic revenue splitting.
Limitations and criticisms
- No native monetization. The hyperstructure design deliberately forecloses protocol revenue, so the company had to find a business model elsewhere — culminating in the pivot to a banking/teams SaaS-like product on top. The protocol succeeded as a public good; it could not itself sustain a company.
- Demand tracked the NFT cycle. Much of its flagship usage (music NFTs, collaborative mints, royalties) shrank with the NFT downturn and the collapse of enforceable royalties, capping organic protocol growth.
- Distribution friction at small scale. Pull-based accounting plus a distribution step means tiny splits can sit undistributed when balances don't justify gas — mostly mitigated on L2s, but a real UX papercut on mainnet.
- V1 rigidity. The non-upgradable V1, a virtue for trust, meant new needs (custom hooks, different ownership models) required a whole new V2 deployment and migration of integrator mindshare.
Lessons
- A protocol that is a payable address is easier to adopt than a protocol that is an API; matching the host environment's simplest interface (here: "send funds to an address") is a massive composability subsidy.
- Fee-free hyperstructures win integrations precisely because they can't extract rent — but the team then needs a separate, honest business model layered above (services, UX, banking features), and that split (protocol as commons, company as service) should be planned from day one rather than discovered under duress.
- Endogenous keeper incentives (the 0–10% distributor fee) are a clean pattern for making "someone must push the transaction" protocols self-operating without central infrastructure.
- Deterministic, counterfactual addresses (CREATE2-style) let downstream platforms integrate before deployment, which quietly does a lot of adoption work.
- Immutability is a trust feature and an iteration tax; versioned redeployments (V1 → V2) are the price, so design early versions with the smallest possible surface.
Redesign (EDITORIAL — hypothesis, not fact)
This section is editorial hypothesis, not a description of anything 0xSplits did or plans. A redesign might keep the immutable V1-style core but add three things. First, a native "auto-distribute" threshold: splits could optionally escrow a tiny gas stipend so distribution triggers automatically when balances cross a creator-set value, removing the dust-stranding problem without keepers. Second, a standardized cross-chain split identity: since SplitMain already lives at one address on many chains, a canonical message-passing layer could let one logical split aggregate revenue from all chains and settle on the recipient's preferred network — today integrators re-create splits per chain. Third, an explicit dual-layer economic design from genesis: protocol immutable and free, with an opt-in, clearly separated "managed" registry (naming, notifications, tax metadata) monetized by the company — formalizing the commons/company boundary 0xSplits eventually reached via pivot. The main risk of this redesign is that auto-distribution and cross-chain plumbing reintroduce exactly the operational and upgrade surfaces whose absence made the original trustworthy; a hyperstructure's simplicity may be load-bearing.
Sources
- Launching 0xSplits: The Splits Protocol (official launch post) — primary (docs)
- 0xSplits/splits-contracts (SplitMain.sol source + audit folder) — primary (contract)
- Splits V1 SDK / protocol documentation — primary (docs)
- SplitMain on Etherscan (0x2ed6...94EE) — primary (contract)
- Splits Blog — 2025 in review (company/product status) — primary (retrospective)
- Splits Blog index (Splits v2 launch 2024-05-07, product history) — primary (docs)
- Zora docs — Creating an 1155 with a split payout (docs)
- solidnoob — 0xSplits protocol breakdown (analysis)
- Transient Labs — What is 0xSplits and How We Use It (analysis)
Related experiments
Last verified: 2026-07-26 · Spot an error? Suggest a correction