Behind all the decentralization talk, most projects still rely on a handful of centralized infrastructure providers—Infura, Alchemy, QuickNode. And while these services are fast and easy, they introduce a single point of failure.

A silent coup is happening in Web3 development. One where convenience is killing autonomy.

This article raises a strong opinion to a debatable question: Which is better for your dApp: a custom Polygon RPC node or a public Polygon node?

The Day Ethereum Froze

The chains kept moving, but nothing worked. Wallets wouldn’t load. Transactions failed silently. Every heart stood still — users and stakeholders alike.

When the first few transactions failed, we couldn’t understand what was happening. We all thought it was a glitch and it was just silent, before the chaos erupted fully.

We were logged out of our Metamask wallets. Binance stopped paying. People were all over Twitter (X), clamoring in panic. I still recall the smug comments from my anti-Web3 friends.

A perfect way to describe that day would be “The Red Wedding” (Game of Thrones fans get it 😌)— a day where everything was going smoothly till it didn’t.

What happened?

The incident was tagged The Infura Outage.

At exactly 7 AM UTC on Wednesday, November 11, 2020, Ethereum experienced dramatic network outages and a possible chain split. As a result, major wallets and exchanges such as Metamask, Binance, and Coinbase had to temporarily suspend the withdrawal of Ethereum and ERC-20 tokens.

It was like a silent coup swept through, shaking the pillars of the decentralized giant that had taken the world under its lead. Investors and users scrambled to retrieve their Ethereum and other tokens.

The Root Cause: Ethereum developers had pushed new code meant to fix a consensus bug, that conflicted with the infrastructure provider, Infura.

Allegedly, Infura was running outdated software (Geth). The new code caused a network split that pushed all of Infura’s clients — including Ethereum — to a minority chain.

The Aftermath: By 2:00 PM UTC, Infura had updated Geth. Transactions resumed. The Ethereum ship was back to sail.

But the damage had been done.

The fact that a giant like Ethereum could lose operations for over five hours due to borrowed infrastructure was unbelievable. For five hours, the whole talk of decentralization felt like orchestrated propaganda all over again.

Podcasts dissected it. Critics had a field day. Anti-Web3 spaces on X gloated. The idea of eliminating centralization? Shaken.

I was very new to Web3 after a friend had convinced me to do some airdrops, acquire a few NFTs and buy some coins. “It will pump one day”, he said. As a broke college student, I was scared to wits that I would lose all my hard savings to an abyss.

The image above is from Infura’s official report page, which shows all their maintenance history and outages. We can clearly see that Infura still faces occasional outage,s which is a major concern.

Web3 on Centralized Rails

That day exposed a harsh truth.

If you don’t own your infrastructure, then you don’t own your dApp.

True decentralization is through ownership of data, nodes, and pathways.

Web3 has made a lot of promises; I would joke with my friends about Web3 vs Web 2 being opposition parties. In this sense, Web2 holds the ruling power for now, while Web3, the opposition with a strong voice, has siren-like promises of giving power to the people. Okay, so I am trying not to get too political or stir up any propaganda, but we can see from the illustration how Web3 has positioned itself as the future of the internet that gives power to users - aka decentralization.

Honestly, I have always been one of those who thought Web3 seemed too good to be true. The fact that the internet can be censorship-free, or that I can truly own my data, seems something out of a Disney show. However, there is a lot that has happened in the Web3 spac,e and now, we are finally seeing a glimpse of that revolution we have been promised.

But then there is a problem; Web3 has promised to free us from the gatekeepers (aka centralized infrastructures, financial systems, decision makers, Government policies on free speech and media, etc), but many Web3 applications run on centralized infrastructure that can decide to obliterate their existence and threaten the very core of true decentralization.

What is Blockchain Infrastructure?

Infrastructure is the entire setup on which dApps function. They include technical tools, services, providers etc that are responsible for allowing dApps work on the blockchain. Nodes, RPC, Indexers, load balancers and cloud providers are the common infrastructures among dApps.

The infrastructure is typically the foundation for decentralized applications. However, it has also become the point where several dApps are still centralized.

A centralized infrastructure vs a decentralized infrastructure

Centralized infrastructure is built and controlled by a single entity or a small group of providers. Running a centralized infrastructure can be using Infura or Alchemy for Ethereum RPC or  hosting frontend on centralized cloud providers like AWS.

The best part of centralized providers is that they make development faster.

But are we up for trading autonomy for fast shipping?

Like Infura’s outage, centralized providers can act as a single point of failure but the most prominent threat to decentralization is that they are susceptible to regulatory pressure and censorship.

To run a dApp on a decentralized infrastructure includes:

The control falls on several independent nodes instead of one single entity or provider. However, taking the path towards building a fully decentralized dApp can be a hard, buggy journey for developers and a costly setup for project stakeholders.

We are faced with a problem of running a true decentralized application, but our major barriers remain cost and complexity. The truth is, infrastructure problems cannot be fixed in a day, but by one node at a time.

One Node at a Time

I mentioned earlier how, in theory, decentralized infrastructure sounds very liberating_ just like the American Dream. The reality, however, is layered by doubts, failures, high costs, and sheer resilience to keep scaling.

In my own opinion, we don’t need to tear down the entire existing infrastructure or boycott them when we have no better, less expensive alternatives. Instead, the focus should be on what’s practical and within reach, like building and running custom RPC nodes.

Which is better for your dApp: a custom Polygon RPC node or a public Polygon node?

One thing is clear: between a public Polygon node and a custom Polygon RPC node, it is all about trade-offs.

Most times, the choice between either option comes with a question of the purpose. What exactly are you trying to build, and what do you prioritize for your dApp?

If you're just experimenting or launching something small, public RPCs make sense. But when your project grows—public nodes will eventually get in the way. At that point, running your own node isn’t just a nice-to-have; it becomes the backbone of your reliability and scale.

Taking Back Control

It starts from one node.
The silent protest to refuse to depend on shared systems and centralized infrastructures.

Choosing between fast and cheap deployment over autonomy should no longer be a problem. If your project is serious about decentralization, performance, or just surviving the next outage, there is an alternative.

Decentralized RPC providers like GetBlock, Ankr, or Chainstack come into play. They offer dedicated or semi-dedicated nodes without forcing you to deal with raw DevOps. Without building the entire infrastructure yourself, you still get better performance and more isolation than public endpoints.

If you are serious about starting, check this resource from GetBlock on how to build your custom Polygon node.