We still see a lot of decks with a slide that basically says, “we’ll put everything on-chain.” It sounds bold and “web3-native,” but it’s usually a tell: the founder hasn’t decided what actually needs credible neutrality, composability, or shared state – and what’s just CRUD in a hoodie.

Blockchains are slow, expensive, and public. Databases are fast, cheap, and private. Treating them like drop-in substitutes is how you end up with unusable products and puzzled investors.

This piece walks through a concrete way to decide which parts of your product truly belong on a blockchain, which should live in web2, and how to explain that split so investors see an intentional architecture – not a buzzword tax.


Before you get into L1 vs L2 debates, be precise about what you actually need that a well-run Postgres cluster cannot give you. In real systems, three properties matter:

  1. Credible neutrality. No single operator can change the rules or censor users. This is why Uniswap’s core pools, Maker’s vault accounting, and Lido’s staking logic live on-chain. If any one company can flip a bit and redirect flows, the system’s guarantees disappear.
  1. Shared state. Multiple independent parties need to read and write the same ledger without trusting each other. NFT marketplaces indexing the same token ownership, or multiple frontends plugging into the same DeFi protocol, all rely on a common state layer.
  1. Permissionless composability. You want unknown third parties to integrate, extend, and build on top of your logic without asking you first. This is why Aave, Compound, and similar protocols expose their contracts as money legos.

If your feature doesn’t lean heavily on at least one of these, you’re not getting real leverage from a blockchain. You’re probably pushing it on-chain for aesthetics, not necessity.


A practical way to design crypto products: assume everything is off-chain by default, and only “promote” something on-chain when it has a clear, defensible advantage there.

A simple mental model:

From there, map your system into three buckets:

You’re not optimizing for “maximum on-chain.” You’re optimizing for a design where the on-chain surface is exactly where your moat, composability, and network effects compound.


We keep seeing the same pattern across NFT platforms, creator tools, and “web3 social” pitches: teams try to force feeds, messaging, and even real-time interactions fully on-chain. Gas and latency bury them.

You’ve seen the variants:

In every case, the real win was the shared asset layer: ownership, balances, rights. Everything else — feeds, ranking, chat, matchmaking — performs better as conventional web2 services built on top of that shared state.


There are, however, clear patterns where pushing more on-chain is a real advantage.

The working model: put the money, rights, and rules on-chain; keep UX, iteration, and personalization off-chain. That’s how Uniswap, OpenSea, and similar protocols ended up with durable moats instead of expensive science experiments.


Most investors have seen enough “put it all on-chain” decks to start from a place of suspicion. What they’re actually looking for is proof that you understand the tradeoffs and are using blockchains only where they create a real advantage.

When you walk them through your architecture, make the split explicit:

That framing does two things: it makes clear you’re not cargo-culting web3, and it reframes your on-chain footprint as a defensible moat, not a side quest. The “right” split is almost never obvious from the buzzwords; it becomes obvious once you map where trust, coordination, and composability are structural to your product—and where they’re not.


If you start from “everything on-chain,” you’ll burn months wrestling the chain instead of benefiting from it. Flip the default: assume everything is off-chain, then selectively pull on-chain only what truly demands credible neutrality, shared state, or permissionless composability. That’s where blockchains stop being a constraint and start being a force multiplier.

Do that mapping early, while it’s still cheap to change your mind. Sketch the system: what’s protocol, what’s coordination layer, what’s just product logic. If you can’t defend that separation on two slides to a skeptical investor, you won’t be able to make it intuitive for users either. The real design question isn’t “how do we put more on-chain?” It’s “what is the minimal on-chain surface that, if we get it right, amplifies the value of everything built around it?”

Need help with a blockchain project?

Applicature has been building blockchain solutions since 2017. Talk to our experts.

Get a Free Consultation