Sunsetting zkSync for Storagenode Payouts

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.

Hooray for making things simple!

The main thing zkSync support did… was generate “How do I get my coins off zkSync?” posts.

It was an entire parallel ecosystem engineered around a temporary problem. I’m glad it’s dead.

Are you always trying to make decisions in hindsight?
Changing payout terms retroactively is a complete nonsense in crypto.

No. (I have to add the question is phrased in a way that an yes gets almost impossible)

Have you opted into zkSync? Any reasons you can’t accept the payout on L1?

Many people, including myself, may have a zero ETH balance on their receiving address to pay the gas fee for withdrawing tokens to another address.

There is absolutely nothing retroactive about it.

Do you understand what “Next” means in the sentence you quoted?

And this is storj problem…. how?

Buy some. Bid deal. You shall be grateful you are forced to not waste money on spread.

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.

Thanks a lot for the retroactive changes.

ToS reqaeres us to have 1 payout addres per operator.

I never said these nodes across different locations belong to me, rather than just being under my technical management.

My ACTUAL guide to CHEAPLY take out you STORj from L2 to L1:

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

  1. 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.

Don’t lecture me on how to do financial bookkeeping for nodes across multiple locations when the hardware isn’t even mine!

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?

By what date in UTC do I need to have this done?

Like a day before we send the payout. I don’t expect that to happen this week. Does Monday next week work for you?

I put this link here as well. Maybe that helps:

I paid for gas with STORJ token when I used them.