There seems to be a lot of confusion about Ethereum's scalability going forward, partly due to evolving roadmaps and inconsistent communication by the distributed research and development teams. The biggest misconception I often see is that some magical thing called "Eth 2.0" will release and see gas prices plummet overnight on a given date – that's just not how it works. Ethereum is all about a series of incremental upgrades, that'll gradually increase scalability across various layers over time.
The bigger issue is that influencers don't seem to keep up either, which leads to the average user who gets their information from them being misinformed as well.
So, here's a cheatsheet for what is actually happening. Please note that it is speculative, and roadmaps are guaranteed to change as this space is fast evolving. But this is to the best of my knowledge at this given time. Please feel free to correct any errors, I'll edit the table accordingly.
You'll find various major upgrades over time versus the different layers in the Ethereum ecosystem, and the TPS they can do with each upgrade. I'll note that there'll be several other minor upgrades added along the way that could lead to safe gas limit increases. Note that a range is given, with the first number the rough average, and the second number if all transactions were simple ETH transfer. TPS is quite a misleading metric if you don't also account for how complex transactions are exactly. Anyway, it'll give you an idea.
I'll also briefly (PS: OK, it turned out to be not brief at all, my apologies) walk you through the roadmap:
Currently, Ethereum mainnet is doing an average of 17-22 TPS (rounded up to 20 here), upto 55 TPS if all transactions were ETH transfers. Rollups live today can do >1,000 TPS, but this is assuming all activity moved to rollups and L1 was simply a settlement layer.
EIP-1559 will have no direct effect on scalability, but it may lead to lower gas prices as it'll mitigate users overpaying for gas. Also, it'll smooth out spikes during busy times so gas prices will definitely be much lower then. It'll do this by effectively doubling TPS temporarily, but of course, this will fall back to the average target over time. Additionally, as an example of minor upgrades, miners may choose to mildly bump up gas limit given gas tokens are gone, and the platform is maturing, but this is just speculation.
zkPorter and Validium are innovative solutions where data availability is maintained off-chain. Today, Validiums like DeversiFi or Immutable X have centralized data availability, but this can be decentralized with their own consensus mechanisms (to an extent, still far more centralized than Ethereum, just like alternate L1s). zkPorter is the first to offer this solution in October 2021, with StarkNet's solution coming in late 2021 or early 2022. Still highly speculative and there are many skeptics about general programmability with ZK rollups and off-chain data availability, but zkPorter is claimed to do 25,000+ TPS. Some will say this is a temporary measure before data sharding releases, and that's fair, but there can be multiple such solutions with their own consensus mechanisms post-sharding and varying centralization trade-offs for offering scalability if the data shards are saturated.
The Merge is a massive event, where Ethereum turns off mining and moves fully to proof-of-stake. However, it's not going to have any significant impact on scalability. Given the block time will reduce to a consistent 12 seconds, we'll see a mild bump.
Data sharding is what will bring massive scalability to rollups, potentially exceeding 100,000 TPS for ETH transfers. It will not affect mainnet scalability significantly, though we may see some L1 smart contracts start to use shards for data, freeing up space. We'll very likely see other minor protocol upgrades before data sharding, and if statelessness + state expiry is close, we can see validators start upping gas limits in anticipation.
Statelessness + state expiry is a highly underrated upgrade and what will give L1 scalability in a sustainable manner. If you follow Vitalik, you'll see a majority of his research activity this year has been around this. If this works out for Ethereum, I fully expect all blockchains to adopt similar state management models in the future. Gas limits can then be increased significantly. I don't know how significantly, though – if anyone has a clearer picture, please share.
Eventually, execution can be turned on shards, but only if/when required. This is when L1 will multiply by the number of shards, and combined with statelessness + state expiry, could lead to significant scalability on L1. However, rollups will continue to be the best solution for maximum scalability and be fairly mature by this time, which is why the jury is still out on when we'll actually need execution on shards. Will people care about high gas prices on L1 if everyone's transacting on rollups anyway? Not to mention, there'll be other solutions emerging to improve L1 scalability gradually.
While we're starting off with 64 shards, there can always be more shards added as the protocol matures. I'd bet there are more shards on chain by the time execution is turned on.
Finally, there's the elephant in the room. This will be controversial, but I believe centralized solutions are here to stay and complement Ethereum. We've seen Binance Smart Chain head down this route, but I think this road simply heads to a place where you have totally centralized sidechains run by financial services companies. Why would people use these? Millions of people already use CEXs not just for trading but also storing and transferring tokens. This is just the natural evolution to CEXs – enabling smart contract functionality in some form. They can run their private EVM chain (database?) with separate applications, but I think the smarter players will also act as aggregators for protocols on Ethereum mainnet and rollups. I believe OKEx is already doing this, where you can join their Yearn or Aave pools, and wallets like Dharma are also experimenting with it. Visa is effectively doing this too, potentially processing millions of transactions on their network, then settling in batches on Ethereum mainnet via third parties. The big clincher is that the UX is much simpler with centralized solutions for the average user that just wants to, say, lend/borrow, and doesn't really understand or care about decentralization. While all of this is regrettable, pragmatically, we've seen most popular tech win out long term due to their convenience factor versus objective qualities. With education, we can get more people to use trustless solutions.
Oh, and there are more exotic upgrades like a fully ZK Ethereum network, but that's several years down the road.
PS: I'm told that the table doesn't render correctly on smaller screens, so here's an image, for your reference: