Held back amount needs a new price model

Back in the days (when you needed years to fill up a node and repair traffic was more expensive) I complained that there is not a big enough incentive for a node to stay online. The held back amount did not cover the costs of repair.

New with the (hopefully soon new normal) influx of data, the opposite is true.

Math on why the model is not good

I could fill up a 20TB drive in one month instead of 30$ get this:

  • Months 1-3: 75% of Storage Node revenue is withheld, 25% is paid to the Storage Node Operator.
    7.5$ per month, 22.5$ held back
    End of month 3 total: 22.5$ payed and 67.5$ held back

  • Months 4-6: 50% of Storage Node revenue is withheld, 50% is paid to the Storage Node Operator
    15$ per month, 15$ held back
    End of month 6 total: 67.5$ payed and 112.5$ held back

  • Months 7-9: 25% of Storage Node revenue is withheld, 75% is paid to the Storage Node Operator
    22.5$ per month, 7.5$ held back
    End of month 9 total: 135$ payed and 135$ held back

  • Months 10-15: 100% of Storage Node revenue is paid to the storage node operator
    still 135$ held back

  • Month 16: 50% of total withholdings are returned to Storage Node Operator, with the remaining 50% held until the node gracefully exits the network

67.5$ held back until the nodes goes belly up :smile:

Repair data is currently 2$. I don’t know what other costs there are involved on the storj side, but at 2$, the 20TB node dropping out should only do around 40$ damage to the network.

So if we look at this pretty complicated and also for newcomers deterring price structure, we in my opinion see why it needs a new model.
I understand the will to offer an incentive for long life nodes. So how about we set it to 4$ per TB?

This could be such an easy price structure.
Held back amount == stored amount in TB * 4$
you could pay 2$ dollars back for graceful exit (so there would still be 2$ lost for the actual damage a node has done to the network).

1 Like

You are correct. The Held amount doesn’t cover the repair costs for us:

So it’s more an incentive to keep your node running. With incubated nodes and/or low ingress it doesn’t make a lot of sense.
But in the current situation with a lot of uploads your node may held enough to be worth to think about a GE, especially if you think only about money.

I have rewritten the post you linked to up to date numbers and my 20TB node example:

the math is a bit more complecated. Lets take a simple example. A network with 80 storage nodes. All the storage nodes are holding 20TB. Now 45 storage nodes are going offline. Repair gets trigger. Lets take a look what will happen.

the repair job has 35 pieces per file available. It has to download only 30 pieces to reconstruct the file. In our example it has to repair all files. In total the repair job will download 30 times 20TB. The price for that is 2$ per TB. → 600$

the repair job is not finished. After reconstructing the file it can reconstruct the lost pieces and upload them to new storage nodes. To get back to 80 pieces the repair job has to upload 45 pieces. Again for all files in our example. A total of 45 * 20TB = 900TB. The repair job doesn’t need to pay the storage nodes for that but the repair job is running on a server and upload traffic has a price. Depending on the location the satellite has to pay something between 1.19€ per TB (Hetzner) and 90$ per TB (Google). → 1071$ - 81000$

Oh man that are some big numbers. How can one storage nodes cover the costs?
Wait a moment. We have lost 45 storage nodes. We can devide the cost by 45. The first storage node will not trigger any repairs but we can say at some point it will.
The damage a 20TB storage nodes can do is something between 37$ and 1813$ depending on the satellite.

Side notes:

  • Repair job is not decentralized
  • Traffic is not free
  • You should not host on google :slight_smile:

My proposed 80$ for 20TB seem perfectly reasonable.
If a node drops out, there are 40$ cost on hetzner that are covered by 80$.
If you pay back 40$ because of GE, there were no costs.

There are some changes since then.

  • repair jobs are decentralized (we run them in several DCs across the world, the number of repair workers is different though, it depends on the number of segments which they need to keep on). But they still requires trust…
  • traffic is still not free on 100%, at least the egress one;
  • yep, we do not anymore… but still…
1 Like

So to get back to the main topic, how is

Held back amount == stored amount in TB * 4$

not better in any single way then what we currently have? :smile:

Yeap. But you know, as we, Georgians, says “from a black sheep even a tuft of wool…”… sic
Not to meant to offend anyone!
this is just a saying…

What’s I mean. Even if the held amount is not enough (still) to cover the repair, it’s better, than nothing…

Then why not raise it now to an amount that makes sense?
Sooner or later you will have to change it to the real costs anyway.

yeah… but it would increase the coming entry threshold…
We do not want to do this. The entry must be free.

However, I got your point…
It’s some kind similar to

and many similar: Search results for 'ideas held amount order:latest' - Storj Community Forum (official)

It is a twofold problem.

A: Maybe this is a threshold that would keep off unwanted nodes that create more costs then reward
B: the current structure is unnecessary complex and could be changed even without really touching the amount total held back

it’s much more simple… please, suggest a system, which:

  • would allow to join anyone who have not used bandwidth and storage;
  • would protect from leaving the network without a contribution (but also without a penalty, which user cannot control);
  • do not require any investments to start;
  • will pay for the used storage and the egress even if the node was disqualified in the same period;
  • sometimes have bonus to the earned sum;
  • no direct financial penalties if the node is failed (except the agreed the held amount for the exactly this case).


Held back amount == stored amount in TB * 4$


:white_check_mark: although I am not sure what you mean with penalty or why this should be a bad thing?



What bonus? How is that done now? Why would that be something we want?

Well, you get the penalty that you don’t get the GE money. So the penalty is already there, although I don’t understand why this is a bad thing, since we wan’t a penalty for nodes that drop out. But since I fail to see the difference between now and the my proposal if a node fails, I would give this one a :white_check_mark:

someone thinks that’s it a bad idea to have a penalty if you abruptly breaks your contract…
so, it’s usually not true… You would always have a penalties if you broke your promises… (ok, I’m sometimes a radical, please, ignore me when I behalf like this…)

Why would you wanna protect someone from leaving that contributed nothing?

I don’t understand it. What penalty? To whom? For what?

here? the held amount.

hm. perhaps the language barrier?

No, but we want that this would be not pain free or at least it’s not a completely free, unless you were here for 16 months or more.
Otherwise it will increase the nodes churn, which we do not want, because you know - repairing fees and other bothering things, which would increase SPENDS (which, I know, the most important and very painful thing for you, even if you do not have a Revenue report and you are forced to use a completely independent things to speculate like a tokens report and also the powerful imagination).

That makes again no sense. You don’t want nodes to pay for just leaving the network? Maybe answer the other question too, otherwise there is no context.

To make it simpler, we can also reverse it.

What case can’t be covered by this? Where is the oversight? Against which of your points, this system fails?

Held back amount == stored amount in TB * 4$

No, but we also want that it wouldn’t be free of consequences. The simple one - you will lose the held amount, if you leave the network abruptly.

heh. There is you are right. The current held amount unlikely will cover our repairing costs… But you know, it is better, than nothing…

Make it too high, you would be a first one who screaming about that. And in the current situation we cannot dictate the market how much it should cost. But we can suggest a fair offer, how much we require to use the network. Especially for the end-to-end encrypted S3-compatible Globally Distributed Cloud Storage.

Nahh. I think it should be representative of the real costs. If that is 10$ per TB or 1$ per TB, I don’t care.