Effective immediately, starting with the upcoming payout, we will stop offering zkSync (L2) as a payout option for storagenode operators. All payouts will be made on L1 Ethereum going forward.
Why we’re making this change
When we introduced zkSync payouts a few years ago, L1 Ethereum gas fees were high and volatile, and moving payouts to a low-fee L2 was a meaningful cost saving for both us and node operators. To help offset the extra friction of bridging/withdrawing funds from L2, we’ve also been paying a 3% bonus on zkSync payouts.
That math no longer holds up:
L1 fees have come down significantly and have stayed low for an extended period, closing most of the original cost gap.
Withdrawal fees off L2 have risen, so the 3% bonus we pay no longer covers what it used to — in many cases operators are worse off net, even with the bonus.
Maintaining two payout rails adds ongoing operational cost and complexity on our end for a benefit that’s largely disappeared.
Removing zkSync as an option lets us drop the 3% bonus payment while operators avoid the L2 withdrawal fees entirely — a net win on both sides.
What this means for you
Starting with your next payout, all payments will be sent via L1 Ethereum only.
The 3% zkSync bonus no longer applies.
You don’t need to change anything. If your account is still set to zkSync, we’ll simply ignore that setting and pay out to your L1 address instead. This is safe because withdrawing from zkSync requires your private key, so paying to the corresponding L1 address should never be an issue. That said — if you’re using a custodial, exchange, or otherwise non-self-custodied zkSync address where you don’t hold the private key, please let us know, since in that case receiving on L1 may not work the same way for you.
How do you withdraw your STORJ funds without ETH? Last time I did that I had to put some ETH on my L1 address to finish the withdraw. So they either changes that or you didn’t use zkSync and just came up with a story.
I have multiple locations, each configured with its own dedicated L2 payout address. Internal L2 transfers didn’t require any ETH balance. Now I have to fund every single address with ETH.
You are joking, right? “I don’t own them, I merely technically manage them” doesn’t create a loophole. If you are operating the nodes, the ToS defines you as the Node Operator. Ownership isn’t part of that definition.
1.10 “Node Operator” means an individual or entity operating one or more Storage Nodes pursuant to the terms of this Agreement
Restrictions:
Operate more than one (1) Storage Node using different Payment Addresses for each Storage Node.
Please don’t pretend not to understand this. “Technical management” of the nodes is operating them.
Fix it. Use one payout address for every node you operate. If some nodes genuinely belong to other operators, give operational control to those operators and let them receive their own payouts.
And if the reason for separate payout addresses is that the income supposedly belongs to different people, you may want to make very sure the tax reporting reflects that arrangement. Otherwise ETH gas fees may be the least interesting problem here.
Ah. So you’re doing the financial bookkeeping for nodes on hardware you don’t own. Whose income are you bookkeeping, exactly?
You really should have stopped at “technical management.” Through this financial maneuvering you’re already violating Storj ToS. If you’re also receiving income that supposedly belongs to other people, you may have created yourself a tax-reporting problem too.
How about this. You can still change your wallet address and I will make sure my coworker runs one final query to get the latest wallet address. Does that work for you?