We're excited to introduce Waterfall, a new contract from 0xSplits that allows you to easily define the order in which people get paid. Just like Splits, Waterfalls are composable, gas efficient, and completely free to use, forever.
We see these types of agreements across industry: someone fronts the money to produce or market a song; an investor needs to repay their LPs before earning carry; the first $10k earned goes towards manufacturing. Recoupments, hurdles, preference stacks, seniority structures—they all amount to the same thing.
Starting today, anyone on Ethereum, Polygon, or Optimism can deploy a contract that securely handles this sequencing automatically. Give it a try at waterfall.new or learn more in the docs.
If you've used Splits before, you'll likely find Waterfalls pretty intuitive. They're standalone contracts that are cheap to operate and can be used on any platform – Opensea, Zora, Sound, Manifold, etc. Similar to Splits, we’ve gone to great lengths to make them as gas friendly as possible. ⛽️🏌️
Here’s what you need to know:
A Waterfall is a payable contract to which a permitted token can be sent. This can be either ETH or any ERC20 token.
A Waterfall has 2 or more tranches. Each tranche has a threshold (a number) and a recipient (an address). The recipient can be any payable address (i.e., a Split, EOA, or SC).
Waterfalls exist entirely onchain and are designed to be composable with other platforms & contracts. In no way are they tied to the 0xSplits app or other contracts.
We built Waterfall after seeing people change their Splits after a specific amount of funds had been received. For example, the NFT mint would conclude, $50k would be distributed through the Split, and then the Split would be modified to account for future income. Waterfall securely handles all this for you, without you needing to manage it yourself. Set it up once and the contract handles the rest.
As we dove in, we realized how common this type of agreement is. Not just in finance, but in music, fashion, startups, real estate. It’s pretty core to value flow across the board. So instead of trying push this into Splits, we decided to build this as a standalone contract that composes well with Splits and other platforms. It's a simple contract that allows for new structures and onchain agreements to exist, especially as you start stacking Waterfalls with Splits and other logic modules.
We've added Waterfall to our docs and SDK. The contracts and frontend are live and can be used on Ethereum, Polygon, Optimism, and all the respective testnets. They'll be coming to Arbitrum soon.
We have a handful of additional contracts that we're launching over the next few months so stay tuned. Thanks for your support and let us know what you think!