Zcash Operators: Earn ZEC for your uptime

Net Watch

I wonder (aloud) if the people who are participating in this thread are ideally positioned to offer a sort of distributed early warning system, keeping the community informed about odd network behaviors as they arise.

People who are running this infrastructure could set up monitors that send alerts when interesting things come up.

For example @zecevangelist surfaced a potential security issue here, if operators were monitoring they could answer questions like this one about the size of the UTXO set quickly (and continuously) and provide multiple perspectives.

4 Likes

That’s a great idea! Sharing what we notice while running our nodes could be really helpful.

I happened to capture this - 1,793 txs in mempool on Nov 14 at 00:57 JST. My node was handling it fine, but I wasn’t sure if it was something worth noting or just normal activity.

Here’s my historical data showing instances where mempool exceeded 1,000 txs (monitored every 3 minutes, sorted by mempool size):

I’m still experimenting with what metrics to track and how to identify what’s actually useful to report.

3 Likes

How do we incentivize cooperation for the common defense among operators?

There’s certainly a competitive incentive, but that should be complemented by a cooperative one.

Sure everyone wants their horse to win the race.. but at the end of the day, we ALL want our horses to be the core of the cavalry that defends the city.

2 Likes

Does anyone else have observations of behavior around the same time? Does everyone see the same thing?

Anyone Zcash node shut down randomly? Is this a common thing

We could make a global dashboard the asked nodes to check it. That would provide a overall health of the network and early warning

1 Like

Folks might want to consider this proposal:

If you’re an operator.. you might want to read this thread, and ask questions, or offer feedback.

1 Like

Thank you very much, I am going to review it, and thank you for your help with my proposal and for taking the time to read it. I have already updated it and clarified a few things in case you want to take a look.

1 Like

Incredible, 52 servers are online now!

Thank you to the operators who promptly upgraded to Zebra 3.0.0-rc.0. It is very important to run the latest versions of the Zcash software for the benefit of the network and users connecting through your servers. Running the latest versions will soon be a requirement to earn a reward.

November 2025 Rewards

25 operators qualified for the November 2025 reward, a total of 85.66666675 ZEC:

Server Version Uptime Ping
z.miscthings.casa:9067 Zebra:2.5.0 99.97865% 422ms
zec.alexxiy.top:9067 Zebra:2.5.0 99.95729% 535ms
z.dptr.capital:9067 Zebra:2.5.0 99.92526% 203ms
zcash.johndo.men:443 Zebra:2.5.0 99.88255% 397ms
lwal.podev.name:9067 Zebra:2.5.0 99.88255% 402ms
zwallet.techly.fyi:443 Zebra:2.5.0 99.88255% 526ms
zeclwnode.mylabtest.vip:9067 Zebra:2.5.0 99.88255% 579ms
zaino.netstable.stream:443 Zebra:2.5.0 99.87188% 359ms
znode.roamerx.win:443 Zebra:2.5.0 99.86120% 421ms
zw.run.place:443 Zebra:2.5.0 99.83985% 385ms
z.arounder.co:9067 Zebra:2.5.0 99.80782% 539ms
lwd.z0n.jp:443 Zebra:2.5.0 99.79714% 438ms
light.myown.party:443 Zebra:2.5.0 99.78646% 560ms
zlw.nodemaster.link:9067 Zebra:2.5.0 99.78646% 891ms
chmodas.org:443 Zebra:2.5.0 99.77578% 401ms
zecapi.linkpc.net:443 Zebra:2.5.0 99.76511% 770ms
lightwallet.qzz.io:443 Zebra:2.5.0 99.19923% 423ms
zecrpc.dpdns.org:443 Zebra:2.5.0 98.30237% 507ms
carover0.xyz:9067 Zebra:3.0.0-rc.0 97.83259% 399ms
zec.bitchat.channel:8443 Zebra:2.5.0 91.57591% 556ms
lightapi.justneedto.click:9067 Zebra:2.5.0 64.21098% 452ms
lightzec.dinks.pw:443 Zebra:2.5.0 64.20030% 575ms
lzec.linked.sarl:443 Zebra:2.5.0 64.15759% 786ms
zecnode.sarl:443 Zebra:2.5.0 64.11488% 424ms
zcw.sererra.link:9067 Zebra:2.5.0 64.04015% 405ms

We calculate uptime as the percentage of the month that a server was online and responding normally to our checker’s requests. The source code for all of this is open and available in Hosh’s Github repository. Previously a bug in our calculations was not taking into account the percentage of a month that a server was online, allowing newer servers to appear to outperform older servers. Since this is the first month that Zcash has ever had over 25 light wallet servers online, we prioritized and deployed a fix to ensure that payouts were distributed fairly.

TXID (the view key is published above):

72ad0f055598c14cf2c9d304ba434d980e01fdf7de7513eea070798c165e0edc

Calibrating Rewards with Decentralization Goals

Our aim is to incentivize the decentralization of Zcash. We were targeting a reward of around $100/month to subsidize hosting costs. Yet it’s been a wild, wild month for Zcash! When we started, 1 ZEC was worth around $40 USD. It’s now at $640. That’s incredible, unprecedented growth at a breakneck pace.

Funding was provided by a generous donor in our community who has been in touch. They are concerned that our unexpectedly-huge reward of 3.42666667 ZEC/month/operator is not aligned with decentralization or longevity, and that it instead is attracting profit-seekers who may not stick around to support the network long-term.

They have asked us to adjust rewards to prioritize decentralization. I was at first vehemently-opposed to making any change to what we initially announced, but upon reflection, it is their money after all.

Today’s payout was 85.66666675 ZEC (>$53k USD today), more funding than even Zec.rocks has ever received. That’s not an efficient allocation of resources for the benefit of Zcash.

With a goal of launching more Zcash servers, for a longer period of time - rather than unintentionally giving 25 people a monthly windfall for a short period of time - we have agreed with the donor’s request to adjust the reward to better align with long-term decentralization.

Rewards Moving Forward

Effective today we are implementing the following changes to the rewards:

  • Rewards will continue beyond the initial six months announced, in order to deploy our newfound budget created by the rapid increase in Zcash’s market value.
  • Monthly rewards will be capped at no more than $300 per month per operator or 3.42666667 ZEC, whichever is less, to align with the realistic cost of hosting a Zcash server. Conversion rate will be determined at our discretion.
  • We are increasing rewards from 25 to now rewarding the top 50 servers each month to further our goal of decentralization.
  • Unused reward budget will rollover into future months. We will regularly update the community on how many months of runway remain.
  • We will post a public donation address to solicit further crowdfunding to keep this going for as long as possible.
  • Rewards will be prioritized by: servers running the most recent versions of Zcash software as determined by our team, successful uptime checks over the prior 30 days as determined by Hosh, and the lowest average global ping as a potential tiebreaker.

These adjustments will help us invest in the long term decentralization of Zcash far beyond our initial six month goal.

Thank you for participating in the decentralization of Zcash during this incredible season for our currency!

9 Likes

can anyone explain how come so many nodes(including mine) just lost so much uptime ?mine went from 99.8% to 19% :smiling_face_with_tear: . everything looks fine from my end

1 Like

@emersonian Something wrong with the Hosh. The last check was performed 10+ hours ago

1 Like

@privacyMACH
Your uptime dropped because the calculation method was updated.

The system now calculates uptime over the full 30-day window, not just the days since your server first came online.
Since your ā€œFirst Seenā€ date is 2025-11-12, all the days before that are counted as downtime.
Your total of 1800 checks reflects the full 30-day period.

If you compare with other servers, some have over 9000 checks, so the difference in check density naturally results in different uptime percentages.
For a server that started recently, seeing a low uptime is completely normal under the new calculation method.

As long as you keep your server running, next month’s uptime will be calculated over a full active period and will stabilize. Keep it running and you’ll be fine.

3 Likes

Hello maeshi and @emersonian

I am sorry but this is an upsetting scene, I lost several days of setup and some Zec and have been edged out by people who posted their links after me and failed more checks.

The bottom 5 of your winner list came when they were all put in, 20 days ago, for me 5 days after I posted my comment asking to be added. (this is when emersonian posted their reply amazing! - forum.zcashcommunity dot com/t/zcash-operators-earn-zec-for-your-uptime/52090/59)

Let’s compare one server (sorry I can’t make links because i am new user);

hosh.zec dot rocks/zec/stroopwafel.observer:9067 = mine: 63.99744% Last 30 Days : First Seen: 2025-10-29 05:17:26.000 : Checks succeeded / failed over past 30 days: 5998 / 22

hosh.zec dot rocks/zec/zcw.sererra.link:9067 = someone else : 64.04015% Last 30 Days : First Seen: 2025-10-29 05:17:27.000 : Checks succeeded / failed over past 30 days: 6000 / 23

So someone posted a day after me, we were added at the same time, they failed one more check (23 instead of 22) but I had 2 fewer checks for some reason. Close, but I just lose, I get 0 and they get almost 3 Zec. Seems very unfair.

…zecnode.sarl:443 came in 4 days after my post…And I saw hosh.zec dot rocks/zec/zcash-chainmatter.tailb19703.ts.net:443 posted by @matterboi was added at the same time, 8 days after they posted and also 8 days after @emersonian replied they would add it = forum.zcashcommunity dot com/t/zcash-operators-earn-zec-for-your-uptime/52090/49. They had more failed checks, but still…

Like others I was attracted to the price increase, and specifically, when I saw I could break even. But now I spent several days of time and when I used Zec to get my infra (took a few tries) this now turns out a solid loss for me too. Better by a lot to just not do it.

If anyone wants to throw in some Zec in my direction, here’s my donation address:

u1x57d8kc9v95tedcvcr5essje3uzqy9fue6ffzp4ulkknexjus3qdq4ud4vnzcldyq7cxzmklyhjw9txsxdyvq7l2m5kx7tjskuafu3ya

I’ll plan to keep infra online for my server’s lease and give this topic a chance. There are probably also others who kind of got a rough deal here too.

I see the plan is changed now too because of price action. Why not just spread out the Zec you set aside for this contest for servers going forward, instead to put a USD pegged cap on a limited amount of servers… spread it out to those who really have infra online?

I knew it wasn’t a sure thing and when the servers didn’t get added to hosh right away I thought this may be a problem…. but this isn’t the first time I’ve been let down by Zec related things in one way or another either.

1 Like

This is a good initiative that I would also like to take part in :clap:

Here’s my node zc.nettools.uno:443

I pay just under 30 dollar monthly for my server, unless any significant negative price action happens, that’s a 10x return on investment. Even though I’ll definitely get less ZEC compared to initially, I am 100% supporting their decision, for the long-term benefit of Zcash.

Also regarding max servers: I believe having less, more stable/resilient nodes for a long period > Having many servers online for a short period. Although I agree that maybe 25 servers seemed a little low, but that’s changed now :slight_smile:

1 Like

I wanted to share my point of view on what is being discussed regarding the community nodes initiative.

  1. It has been observed that in order to demonstrate the activity of the nodes, we are depending on centralized web hosting (today there was a 4-hour internet outage).

  2. Is there a way we can count the activity of the decentralized nodes? That way, everyone would have transparency, since there are many complaints about transparency.

  3. Can the count be reset and start as a new cycle? I see that there is a lot of confusion about this part.

my node sent down again, i am getting error from the docker logs like - zebra-1 | error: Zebra could not load the provided configuration file and/or environment variables.This might mean you are using a deprecated format of the file, or are attempting to
zebra-1 | configure deprecated or unknown fields via environment variables.You can generate a valid config by running ā€œzebrad generateā€, and diff it against yours to examine any format inconsistencies.
zebra-1 | error: zebrad fatal error: I/O operation failed: Configuration error: unknown field checkpoint_sync, expected one of consensus, metrics, network, state, tracing, sync, mempool, rpc, mining, health
zebra-1 exited with code 1 (restarting)
lightwalletd-1 | {ā€œappā€:ā€œlightwalletdā€,ā€œerrorā€:ā€œinvalid http POST response (nil), method: getblockchaininfo, id: 4, last error=Post "``http://zebra:8232``": dial tcp: lookup zebra on 127.0.0.11:53: no such hostā€,ā€œlevelā€:ā€œwarningā€,ā€œmsgā€:ā€œerror with getblockchaininfo rpc, retryingā€¦ā€,ā€œretryā€:4,ā€œtimeā€:ā€œ2025-11-18T23:16:13Zā€}
zebra-1 | error: Zebra could not load the provided configuration file and/or environment variables.This might mean you are using a deprecated format of the file, or are attempting to
zebra-1 | configure deprecated or unknown fields via environment variables.You can generate a valid config by running ā€œzebrad generateā€, and diff it against yours to examine any format inconsistencies.
zebra-1 | error: zebrad fatal error: I/O operation failed: Configuration error: unknown field conf_path, expected one of consensus, metrics, network, state, tracing, sync, mempool, rpc, mining, health
zebra-1 exited with code 1 (restarting)

any fixes ?

1 Like

Hello,

The recent Zebra auto-update changed the configuration format. You’ll need to update your .env file to fix this issue.

The new format uses double underscores between section and key names:
ZEBRA_CHECKPOINT_SYNC → ZEBRA_CONSENSUS__CHECKPOINT_SYNC

By the way, my server was down with the same issue :sweat_smile:
Bad timing with the Cloudflare outage – thought it was that and left it.

Hope this helps.

3 Likes

thanks alot, this is what i have fixed in the .env file . :clinking_beer_mugs:

RUST_LOG=info
#ZEBRA_FORCE__USE_COLOR=1
LOG_COLOR=true

LIGHTWALLETD_DONATION_ADDRESS=

The config file full path used in the Dockerfile.

#ZEBRA_CONF_PATH=/etc/zebrad/zebrad.toml

[network]

NETWORK=Mainnet
ZEBRA_NETWORK__LISTEN_ADDR=0.0.0.0

[consensus]

ZEBRA_CONSENSUS__CHECKPOINT_SYNC=true

[state]

Set this to change the default cached state directory

ZEBRA_STATE__CACHE_DIR=/var/cache/zebrad-cache
LIGHTWALLETD_DATA_DIR=/var/cache/lwd-cache

[metrics]

METRICS_ENDPOINT_ADDR=0.0.0.0
METRICS_ENDPOINT_PORT=9999

[tracing]

TRACING_ENDPOINT_ADDR=0.0.0.0
TRACING_ENDPOINT_PORT=3000

[rpc]

ZEBRA_RPC__LISTEN_ADDR=0.0.0.0:8232

if ${RPC_PORT} is not set, it will use the default value for the current network

#ZEBRA_RPC__LISTEN_PORT=8232
ZEBRA_RPC__ENABLE_COOKIE_AUTH=false
1 Like

Let’s decentralize it! Make ZEC decentralized again :joy: :rofl: I set the node on rails. Let’s go!

zwal.orderpeak.me:443

zec.rollrunner.info:443

add me plz