# Block size and scalability

**URL:** <https://forum.zcashcommunity.com/t/block-size-and-scalability/1036>\
**Category:** Technology\
**Created:** [July 24, 2016, 10:20am UTC](https://forum.zcashcommunity.com/t/block-size-and-scalability/1036 "2016-07-24T10:20:50Z")\
**Posts on this page:** 13\
**Page:** 1

<div class="post-metadata">

**Author:** ![Philip](https://avatars.discourse-cdn.com/v4/letter/p/96bed5/32.png) [@Philip](https://forum.zcashcommunity.com/u/Philip)\
**Post date:** [July 24, 2016, 10:20am UTC](https://forum.zcashcommunity.com/t/block-size-and-scalability/1036/1 "2016-07-24T10:20:50Z")

</div>

How is ZCash going to handle the questions of scalability, specifically block size?

I found some old posts about this, basically saying that the devs will handle this problem later. Will that be easy to do, or will we find ourselves in a similar situation to Bitcoin in 5 years time, trying to implement a controversial hard fork that the miners don’t like?

What lessons can be drawn from Bitcoin in regards to this? How will the same fate be avoided?

I’ve been following the development of ZCash / zerocoin for years now, and I think this is incredibly important work. I’m in awe of you guys! I really want to see this coin succeed.

---

<div class="post-metadata">

**Author:** ![Voluntary](https://sea2.discourse-cdn.com/zcash/user_avatar/forum.zcashcommunity.com/voluntary/32/4343_2.png) [@Voluntary](https://forum.zcashcommunity.com/u/Voluntary)\
**Post date:** [July 24, 2016, 9:50pm UTC](https://forum.zcashcommunity.com/t/block-size-and-scalability/1036/2 "2016-07-24T21:50:48Z")

</div>

There was a hardfork between the z5 and z6 releases that took the Zcash blocksize from 1MB to 2MB.

I don’t follow bitcoin closely enough but I’ve long assumed that part of the reason bitcoin has eschewed bigger blocks is that it would obsolete certain otherwise current generations of mining hardware that have been designed around 1MB blocks before they’ve either paid for themselves or been able to generate the projected profit.

For as long as Zcash mining remains free of such hardware constraints, I doubt that particular kind of hardfork will be cause controversy.

---

<div class="post-metadata">

**Author:** ![hud](https://avatars.discourse-cdn.com/v4/letter/h/ce73a5/32.png) [@hud](https://forum.zcashcommunity.com/u/hud)\
**Post date:** [July 26, 2016, 2:30am UTC](https://forum.zcashcommunity.com/t/block-size-and-scalability/1036/3 "2016-07-26T02:30:45Z")

</div>

[quote=“Voluntary, post:2, topic:1036, full:true”]current generations of mining hardware that have been designed around 1MB blocks  
[/quote]

seems like you’re misinformed, ASIC miner does not depend on a certain blocksize. Current debate on Bitcoin is how to massively scale the network, not just a trivial increase to 2MB limit. Two approaches are either using second trustless layer such as Lightning/Thunder to keep main chain decentralized; or prioritizing main chain transactions by inflating blocksize heavily.

Currently Zcash is testing 2MB blocksize every 2.5 minutes. However private Zcash transaction has much larger size than Bitcoin transaction, so having bigger and faster blocks does not mean Zcash will have higher throughput than Bitcoin.

I know it is too soon to talk about massive scalability for Zcash at the moment but i still want to know the opinion of Zcash team on the long term scaling solutions. Lightning Network (which utilize multisig transaction) seems not to be applicable for Zcash’s JoinSplit. I think the only option left for Zcash in foreseeable future would be increasing max block size.

---

<div class="post-metadata">

**Author:** ![daira](https://sea2.discourse-cdn.com/zcash/user_avatar/forum.zcashcommunity.com/daira/32/43253_2.png) [@daira](https://forum.zcashcommunity.com/u/daira)\
**Post date:** [July 26, 2016, 12:20pm UTC](https://forum.zcashcommunity.com/t/block-size-and-scalability/1036/4 "2016-07-26T12:20:49Z")

</div>

There’s a blog post coming up soon that will address that question (private payment channels).

---

<div class="post-metadata">

**Author:** ![bible](https://avatars.discourse-cdn.com/v4/letter/b/a587f6/32.png) [@bible](https://forum.zcashcommunity.com/u/bible)\
**Post date:** [November 4, 2016, 6:26pm UTC](https://forum.zcashcommunity.com/t/block-size-and-scalability/1036/5 "2016-11-04T18:26:47Z")

</div>

Will Zcash allow hardfork like Ethereum or Zchain will be an immutable one like Bitcoin?

---

<div class="post-metadata">

**Author:** ![Blazin8888](https://sea2.discourse-cdn.com/zcash/user_avatar/forum.zcashcommunity.com/blazin8888/32/9263_2.png) [@Blazin8888](https://forum.zcashcommunity.com/u/Blazin8888)\
**Post date:** [March 7, 2024, 12:49pm UTC](https://forum.zcashcommunity.com/t/block-size-and-scalability/1036/6 "2024-03-07T12:49:38Z")

</div>

How will Zcash address this problem in the future? Right now we have a blocksize of 2MB. BCH is 32MB. Will we need to eventually consider raising the blocksize to keep fees low?

I saw this post from daria about scaling via zk rollups…is this an alternative to raising blocksize?

> [@RE: Zcash Foundation's question "Can Zcash scale to a million users?"](https://forum.zcashcommunity.com/t/re-zcash-foundations-question-can-zcash-scale-to-a-million-users/38349/2):
>
> Part of the motivation for Orchard, the next shielded protocol, is to enable scaling via zk rollups. This ticket describes a possible next step after Orchard is activated: [Shielded transaction aggregates · Issue #4946 · zcash/zcash · GitHub](https://github.com/zcash/zcash/issues/4946)

[https://x.com/\_electronicCash/status/1764750681007653020?s=20](https://x.com/_electronicCash/status/1764750681007653020?s=20)

---

<div class="post-metadata">

**Author:** ![ytrezq](https://sea2.discourse-cdn.com/zcash/user_avatar/forum.zcashcommunity.com/ytrezq/32/28174_2.png) [@ytrezq](https://forum.zcashcommunity.com/u/ytrezq)\
**Post date:** [September 21, 2024, 8:55pm UTC](https://forum.zcashcommunity.com/t/block-size-and-scalability/1036/8 "2024-09-21T20:55:33Z")

</div>

[An other problem is transaction censorhsip](https://github.com/svanas/sanctionooor) along with [Largest Ethereum miner, Ethermine, stops processing sanctioned transactions](https://cryptoslate.com/ethereum-is-under-attack-as-u-s-sanctions-apply-at-a-protocol-level/). The requirement to have \>3Tb of cutting edge ꜱꜱᴅ storage for Ethereum is driving out users and they take weeks to build.

At some point, it becomes too costly to run a node and the entire network is controlled by compliant companies.

By contrast, you can run a full Bitcoin node on your phone (~450Gb) thanks to the low block limit.

---

<div class="post-metadata">

**Author:** ![kralux](https://avatars.discourse-cdn.com/v4/letter/k/8dc957/32.png) [@kralux](https://forum.zcashcommunity.com/u/kralux)\
**Post date:** [November 27, 2024, 5:22am UTC](https://forum.zcashcommunity.com/t/block-size-and-scalability/1036/9 "2024-11-27T05:22:04Z")

</div>

3TB isn’t that much these days. The sync latency isn’t a big issue if you plan on keeping your node running for years.  
We are talking about competing with the visa’s of the world.  
It is worth it to invest a bit in supporting that effort…

---

<div class="post-metadata">

**Author:** ![ytrezq](https://sea2.discourse-cdn.com/zcash/user_avatar/forum.zcashcommunity.com/ytrezq/32/28174_2.png) [@ytrezq](https://forum.zcashcommunity.com/u/ytrezq)\
**Post date:** [December 1, 2024, 9:41am UTC](https://forum.zcashcommunity.com/t/block-size-and-scalability/1036/10 "2024-12-01T09:41:02Z")

</div>

3TiB. But in cutting Edge slc based ꜱꜱᴅ ! Please recheck. This costs several thousands dollars.

---

<div class="post-metadata">

**Author:** ![larry](https://avatars.discourse-cdn.com/v4/letter/l/47e85d/32.png) [@larry](https://forum.zcashcommunity.com/u/larry)\
**Post date:** [March 9, 2025, 1:38am UTC](https://forum.zcashcommunity.com/t/block-size-and-scalability/1036/12 "2025-03-09T01:38:30Z")

</div>

Hi (not sure if this is the right place for this)

Where can I find the most developer friendly documentation on zcash? Specifically, looking for the following (before I dive into the actual zcash codebase)

1. An example transaction (a real payload emitted by wallets) to see what the fields & values look like (all youtube videos are conceptual, can’t find a real examples)
2. Design diagrams on how the software (run by a node) is partitioned
3. Steady state logs of a single block (what a node does during the 75 second window). Or just step-by-step documentation of the logic, that helps too.
4. What IDE do zcash devs use?

Right now im looking through [z\_sendmany - Zcash 6.1.0 RPC Docs](https://zcash.github.io/rpc/z_sendmany.html), but im more interested in the underlying implementation of the rpc, and how zk proof/verification are implemented in code.

If you’re a dev that recently onboarded to zcash, what was the best starting point for you when getting familiar with how zcash implements zk proofs?

Thanks!

---

<div class="post-metadata">

**Author:** ![Shawn](https://sea2.discourse-cdn.com/zcash/user_avatar/forum.zcashcommunity.com/shawn/32/187_2.png) [@Shawn](https://forum.zcashcommunity.com/u/Shawn)\
**Post date:** [March 9, 2025, 11:25am UTC](https://forum.zcashcommunity.com/t/block-size-and-scalability/1036/13 "2025-03-09T11:25:10Z")

</div>

CC @str4d @daira ⬆

---

<div class="post-metadata">

**Author:** ![conradoplg](https://sea2.discourse-cdn.com/zcash/user_avatar/forum.zcashcommunity.com/conradoplg/32/42878_2.png) [@conradoplg](https://forum.zcashcommunity.com/u/conradoplg)\
**Post date:** [March 10, 2025, 10:41pm UTC](https://forum.zcashcommunity.com/t/block-size-and-scalability/1036/14 "2025-03-10T22:41:15Z")

</div>

Note that zcashd is being deprecated in favor of [zebrad](https://github.com/ZcashFoundation/zebra/), so the first step is making sure to not waste time studying code that is being deprecated!

Zebra has a book that documents its usage and design (be aware that some stuff might be outdated…) [https://zebra.zfnd.org/](https://zebra.zfnd.org/)

You can get example transactions in a block explorer e.g. [Zcash Transaction a33d7a73e7ddb53f2126a9e41cea9b5b95241eaa7c12d1c7572f294d9b978a68](https://mainnet.zcashexplorer.app/transactions/a33d7a73e7ddb53f2126a9e41cea9b5b95241eaa7c12d1c7572f294d9b978a68) (click the JSON link to get the details in JSON format, and the raw tx in the “hex” field)

The ZK part is mostly handled by crates e.g. orchard and sapling\_crypto. They are a separate and huge can of worms, see [Orchard - The Orchard Book](https://zcash.github.io/orchard/) for a place to start.

I think most devs use VS Code (but there are always the hardcore ones who use vim or emacs 🤣 )

---

<div class="post-metadata">

**Author:** ![larry](https://avatars.discourse-cdn.com/v4/letter/l/47e85d/32.png) [@larry](https://forum.zcashcommunity.com/u/larry)\
**Post date:** [March 16, 2025, 3:05am UTC](https://forum.zcashcommunity.com/t/block-size-and-scalability/1036/15 "2025-03-16T03:05:22Z")

</div>

Awesome, thanks! Will start with zebra & orchard book.

And sorry about late response, I’m a full time swe so this is a weekend hobby for me lol (for now at least).
