That was the original plan, using POR tokens, meant as Quid Pro Quo. The vault “promises” X storage available, thus giving you credit in the form of POR tokens. However, vaults are able to spend POR (upload data) then take back their promise by turning off before it fills up.
The solution was to pay “after storage was proven”… from a GET request. Also, Safecoin replaced POR. This is where we are today. The one barrier is people need to acquire Safecoin first, before they can PUT. This is the same as farming before you can PUT.
I suspect the big cost to the network is bandwith. IMO storage is less critical because we can always add more. @dirvine, originally suggested free PUTS, which many objected.
I proposed a bootstrap solution which allows free PUTS, depending on storage availability.