Basic Safe Network Elements

Even though I’m a fairly long-term member of this forum, I’m still a little hazy about the overall plan for the network. I’m trying to get a grasp of the big picture for Safe Network in relation to the basic premise(s). Please correct me where I’m wrong, and if someone could enlighten me concerning the questions at the end, it would be much appreciated.

  1. The basic theory is that people will pay a one-time fee for uploading data to the network.
  2. This data will be persistent, always available.
  3. If editing, or updating, is ever needed, a completely new copy will be uploaded and the entirety will have to be paid for again.
  4. This uploaded data will be held in chunks covering multiple devices.
  5. If a person is interested in hosting a “vault” for Safe data, he will only be paid once for each new chunk stored on his device.
  6. When a host’s allotted storage space is used up, he will not store any new data and, hence, stop receiving payment for hosted data.


  1. What is the incentive for a host to keep the data on his device indefinitely if he will never be paid after the initial storage (upload)?
  2. When the device (PC, phone, tablet) is rebooted will all of the stored data be gone and will he be able to start the storing/receiving payment cycle again?
  3. If #2 is true, will this be a “strategy” people will adopt in order to keep receiving a stream of payments?
  4. After someone else’s device is rebooted and the person in question happens to receive some of the re-directed chunks, will he be paid for this “second-hand” storage?

I understand the network is still in a formative stage and some of these things might not be set in stone yet, but it seems to me that some of what I have detailed must still be valid . . . but maybe not. Thanks in advance for any help in understanding the basic goals and premises of Safe Network.


This is incorrect. All nodes are equal now, so new nodes are immediately filled with data they are not paid for. New chunks will go to one of the nodes near the xor address of the chunk for which it will be paid.

Space for new chunks is created by churn when new nodes join and the data becomes spread more thinly across all nodes (regardless of age). In the real network as opposed to testnets, a node should never be full - that’s a disastrous situation if representative of the network - unless of course it is just an inadequate device, in which case it will be shunned eventually.

So nodes always have space for new paid for data. The more ‘full’ they get the higher the prices they charge, which is what entices new nodes to join the network and create more space for new data.

I think this correction deals with most of your questions. But follow up if not.


Thank you very much @happybeing. Beginning to get a better understanding.

So data is constantly being moved around only when new nodes join, and that’s what creates new earnings potential for the node in question? What if there is a long period when no new nodes join? What keeps the node from getting filled up if the ratio of uploaded data/nodes is very low? If it does get filled up, will the next churn event relieve some of the space, allowing it to, once again, start earning? Will anything other than new nodes joining cause a churn event? What is to keep the node from intentionally rebooting every day (creating a churn event?) to maximize his earnings potential?


All nodes are equal. Doing that doesn’t earn more, it wastes time and bandwidth rebooting and receiving chunks.

Supply and demand regulated through store cost take care of most of this. The other is network size, which if large will even out fluctuations that could push a small network over a cliff.

So long as people want to store data this won’t be a problem once the network is large, because that provides a constant stream of revenue that supports the entire network.

Like any business and cashflow, or any organism eating food to maintain the body, things have to remain within probabilistic limits to avoid collapse.


Still confused about this. What allows a mostly-full node to continue to receive rewards? Say the node is 90% full. What will cause this to decrease in order for it to, once again, receive paying chunks? I guess I’m stuck on the thought that all nodes will, inevitably, tend to become non-earning, given enough time.

1 Like

Chunks are spread evenly so as nodes gain chunks the price of storage goes up and more nodes join.

As nodes join, chunks are spread out among more nodes freeing up capacity and reducing storage costs. If it drops too much some modes may leave.

These two forces push-and-pull to balance node numbers at a level of storage which keeps the network from being too full or too empty.


I’m sorry, but “What allows a mostly-full node to continue to receive rewards”?

There should be no such thing in a real network. The design ensures this should never happen.

Suppose the Goldilocks point is 50% fullness and the network fluctuates in capacity around this level. Statistically it’s not likely a node would get to 100% so it’s not a problem.

What percent is optimum to aim for I don’t know, but it is the price curve which controls this and which was being experimented with not long ago.

I think you are stuck with the idea that any node is eventually likely to get full, but it should never happen, at least not unless the node is inadequate and deserves to be shunned.


I’m actually stuck with the idea that each node will eventually get to be non-earning, or, at the very least, minimally earning (compared to what the node was earning in the early going), thereby leading to disillusionment with being a network host (node).

That view implies that storing data on this network cannot fund the resources needed to do so. That’s a view, but you need to explain why because on a macro level things look favourable compared to alternatives.

If the network has a good business model, then there’s no reason to think that running nodes won’t pay enough for people to want to do this.


Do you mean that in some circumstances 50% full node may become 49% full, i.e. it will delete some records?

1 Like

That’s not what I am questioning. I am questioning the incentive for a node to continue offering resources to the network over an indefinite period of time. So the node gets rewarded handsomely in the beginning, but suppose a year or two goes by and the rewards are minimal compared to the beginning, which seems likely to me, given my current understanding of the reward equation. What will keep the node operator from feeling it isn’t worthwhile keeping that committed storage amount tied up anymore, and what can he do about it?

1 Like

I can understand this. If nodes are a fixed size, and puts keep happenning throughout the address space, if they don’t restart occasionally, what would stop them filling up eventually?

If uploading users were able to avoid paying nodes that are a certain amount above average node store-cost for their chunk it would provide an incentive for any filling nodes to restart.

And/or if nodes were able to expand their node max storage space and adjust storecost to their new max storage capacity, I could see how incentives would work to balance things.

But with fixed node sizes, and payments to all nodes, I don’t yet see how the incentives are there to enable the market to work.

Currently do all nodes get paid even if they’re well above average?

Sooner or later some node will land close ( in XOR space) to this node and they will split the load.


Same question as above: will node delete some records?

Voila! Thank you, @peca. Can we get confirmation of this, that the node is more dynamic than static and that there will always be new earnings potential, given enough time, even when the capacity of the node is close to maximum?

@Vort Yes, exactly. I’m not sure that’s what happens right now but that is the principle.

@VaCrunch Some early adopters will leave which causes other nodes become fuller. Rewards will then rise until enough other nodes join to find a level of earnings that maintain enough nodes operating.


@VaCrunch I’ve lready answered this, and your point @DavidMc0 so I don’t have any more to add.

If there’s anything in my responses that is unclear by all means question with a quote so I can clarify but I’m not going to repeat my answers.

I always was under impression that nodes are getting paid for storing chunks.
But what you describe looks different: nodes are getting paid for participating in the network. Chunks may be stored, may be deleted, then stored again - it does not matter what exactly is happening - it is just technical details.

Maybe I understand situation wrong again, sorry if that’s the case.


Nodes have always done more than store data because storage is only part of what makes this work. So nodes have always been paid for doing their job correctly.

The precise mechanism isn’t the point, it’s a part of system and a detail that has changed more than once as the design changed.