Solana Boosts Transaction Size Limit 3.3x to 4,096 Bytes
Solana's mainnet has activated its v1 transaction format, which increases the per-transaction size limit from 1,232 bytes to 4,096 bytes. This upgrade was implemented at epoch 1,035 on September 15 and is expected to allow developers to build more complex applications by unlocking workloads that previously couldn't fit inside a single transaction.
The original 1,232-byte ceiling dated back to Solana's early design and was sized to fit inside a single IPv6 Maximum Transmission Unit (MTU) packet. However, the new limit aligns with a standard 4 KiB memory page and will allow developers to create more advanced applications such as Confidential Transfers, which rely on ZK proofs to shield on-chain balances.
Infrastructure providers face breaking changes due to this format change, with Remote Procedure Call (RPC) endpoints requiring the maxSupportedTransactionVersion: 1 flag to avoid returning error code -32015. Additionally, WebSocket subscribers using blockSubscribe will receive null blocks and stop advancing on v1 slots unless they read the new TransactionConfigMask embedded in v1 messages.
This upgrade is part of a broader throughput campaign, with Solana validators cutting slot times from 400 milliseconds to 350 milliseconds in August and targeting further reductions. Protocols must update to the v1 format to access the larger size, with minimum SDK versions required being @solana/kit 8.0.0 and the solana Rust crates 4.2.x.