Sia Hosting Guide

Learn how to rent out your spare storage on the Sia network.


Introduction

Some things to know about hosting storage on the Sia network.

Last Updated May 31, 2018

This guide will help you get set up as a host on the Sia network. The guide is writting using Sia v1.3.1 with examples for Windows. The instructions provided should apply to the Sia-UI on all major operating systems.

Hosting Considerations

There are a few things you may want to know about before committing to being a host on Sia. If you haven't yet, we'd also recommend reading through our Hosting section to learn more about how hosting and how hosts are scored.

Notice: Sia is still in development. While rare, various hosting issues have been reported that sometimes result in issues like hosts showing as offline or excessive locking of collateral. You also risk losing Siacoins when hosting, so take this into consideration when deciding to become a host.

  • Hosting is a serious commitment! If you host on Sia, your hosting computer must be online and connected to the internet 24 hours a day, 7 days a week. Renters may need to upload or download their data at any time. If you're not online, you're not doing them any good.

    We now have a Suggested Host Settings page to help you determine if your configuration is recommended for hosting - we'd recommend visiting it and answering the questions before attempting to become a host on Sia. In summary, you shouldn't plan to be a host if you don't have a reliable computer, power or internet connection. You also probably shouldn't host if you have data caps on your internet connection. You cannot host with a computer that is only on sometimes.

  • Hosting is currently not very profitable. Network utilization is fairly low, and there is more storage on the network than there is demand for it. For that reason, many hosts have set very low prices that can be hard to compete with. Additionally, while you might technically be able to price your host around current averages, you'll likely only see a small portion of your storage utilized and may not make anywhere near that. After power costs, hosting may not be profitable. Buying new storage to put on Sia is almost certainly a bad idea right now. It's recommended that you host if you find the project interesting and want to contribute to the network, and at some point in the future hosting may become more profitable.
  • You can actually lose money as a host if you're not careful! If you go offline for too many hours, or you lose renters' data, you can lose your collateral. This is true even if the outage is not your fault, like a hard drive failure or a power or internet outage. The Sia protocol can't discern between accidental outages and hosts that have gone offline and have no intention to return, so if your host goes offline or doesn't have renter data, you're at risk of being penalized regardless of the reason for the outage.

Ready to get started? Read on!


Prerequisites

The following items MUST be completed before you can continue.

Recommended: Check Your Host Configuration

While not required, we recommend that you answer the questions on our Suggested Host Settings tool before you configure hosting if you haven't done so yet. It will tell you if there's a reason you may not want to host based on your particular configuration/resources, and explain why. This will save you the trouble of setting up hosting and possibly losing Siacoins later if you run into issues.

Prerequisite 1: Download the Sia-UI Client and Set Up a Wallet

You must first install the Sia-UI Client, create a wallet, and wait for your client to fully synchronize. If you haven't done this yet, instructions on downloading the Sia-UI Client and setting up a wallet can be found in our Wallet Setup Guide.

Prerequisite 2: Acquire At Least 2,000 Siacoins

You must have at least 2,000 SC to set up hosting via the Sia-UI. If you don't, you'll see this message:

Less than 2,000 SC? Can't set up hosting via the Sia-UI.

You can still set up hosting via the Terminal, provided you have some Siacoins. You can't host with zero Siacoins because you're required to post some as collateral for new contracts. Click here if you want to jump to the section below on configuring hosting via the Terminal with less than 2,000 SC.

Instructions on buying Siacoins can be found in our Guide to Buying Siacoins.

Before you continue, make sure you've taken care of these steps first.


After Prerequisites Are Complete

All set on the prerequisites? Let's get started!

Step 1: Click the Hosting Tab

Open the Sia-UI and click on the Hosting tab on the left. This is where you can configure your host settings. Your wallet needs to be unlocked and you need at least 2,000 SC in your wallet to set up hosting. If this is the case, we'll see the full Hosting configuration page:

Our Hosting configuration page if we've got the required Siacoins.


Step 2: Set Hosting Prices and Parameters

We've tried to simplify this step for you! Visit our Suggested Host Settings page (opens in new window). It will list current average host prices on the Sia network, explain what each one is and why it matters, and provide suggested starting ranges for you to set as a new host.

Look at the prices listed under Recommended Host Settings there, and then start setting your prices in the Hosting section of Sia-UI. Note that some prices listed on the Suggested Host Settings page can only be adjusted in the Terminal manually, so for now, you can set the prices available to you in the UI and then fine-tune the others later if needed.

All Hosting settings as seen in the Sia-UI.

Once you've set all these values, you can click Save at the top of the Settings section to save them.


Step 3: Select a Storage Folder Location

Now that we've got our pricing figured out, we need to tell Sia where the storage that we wish to rent out actually is on our computer. Below the Settings section that we just finished with, you'll see Add Storage Folder. Click on it, and you'll be prompted to select a location. You can choose a drive root (i.e. D:\) to use an entire empty drive or part of a drive, or you can pick a specific folder on a drive. Sia will create one large file in the location you select that allocates the amount of storage you choose.

After selecting a folder or drive, you'll be asked how much space you want to allocate.

Sia will ask you how much space you want to allocate to hosting. This number can't exceed the free space on the drive you selected, and must be at least 35 GB. Note that if you allocate less than 4 TB of free storage space to Sia total, your host score will be lowered as a result. If you have more than 4 TB to rent out, it's best to do so. Also notice that this value is in GB, so 1 TB = about 1000 GB (1024 GB by some measurements) if you're sharing that much space.

We selected our D:\ drive for this example. We didn't allocate very much space, though - this is just an example.

Once you add a folder, it will show up at the bottom of the Hosting section. You can change how much space you allocate at any time, but you can't decrease the amount below 35 GB. You also can't decrease the amount of space you've allocated below what you have active contracts for and what your renters are using. You can delete folders, but if they contain renter data you risk losing your collateral if you delete the renter's data.


Step 4 (Optional): Fine-Tune Prices Via Terminal

You have the ability to set a few additional prices that you can't set via the Hosting UI page, like Contract fees and individual Upload Bandwidth and Download Bandwidth fees. This isn't required, but it can help you to fine-tune your host and maximize your host score. You can do this now using the information below regarding Hosting via the Terminal, or you can continue to Step 5 now and leave these alone or adjust them later. Any changes you make to host settings and pricing only affect new contracts, and as a new host, you won't receive contracts for a while, so there's no big hurry in getting all of your settings sorted out before announcing.


Step 5: Accept Contracts and Announce

Now that we've got everything set up, we're ready to turn it all on! Click the Accepting Contracts slider, and we'll be given a final warning of what we hopefully already know by now:

Last chance! After this, we're committed as a host.

The last thing we need to do is click the Announce button at the top of the Hosting page, which broadcasts our host to the network. We only need to do this once. You'll see a very small transaction come out of your wallet (about 0.018 SC) related to announcing yourself.

Congratulations! You're set up as a host on the Sia network.


Now What?

Now that you're set up as a host, here are a few tips.

Make Sure Your Host Stays Online

Check your hosting computer regularly to make sure it's still turned on and online, Sia is open, and your wallet is unlocked. Your host is not active if Sia isn't open or your wallet is locked. Also check to make sure your host displays Host Online at the top of the Hosting page. For more information on how to set Sia to start automatically, unlock your wallet automatically, and how to troubleshoot if your Hosting status is Host Offline or Host Unreachable, see our Hosting FAQs page.

Monitor Your Host Score

Your Host Score determines how likely you are to be picked for new contracts by renters. You can monitor several metrics of your Host Score by visiting SiaHub and searching for your host by your public IP address, and clicking View. SiaHub updates with new hosts about every six hours, so your host may take up to a day or so to show up on SiaHub. If you still don't see your host after a day, check to make sure your host says it's still online at the top of the Hosting page.

Note that SiaHub's host score information is an estimate only and is not 100% accurate, but it gives you a good idea on where you stand compared to other hosts.

Monitor Your Collateral

You may also want to keep an eye on your collateral, as deductions from your wallet for collateral can add up. Sia can tell you how much collateral you have locked, how much you risk to lose if you go offline, and how much you've lost already (if any). See the Collateral section on our Hosting page for more information on how to check your collateral in these categories, as well as what each means.

Be Patient

As a new host, your host score won't be great because you're penalized simply for being new and not having a reputation yet. This penalty lowers over time, and eventually goes away after about 6 weeks. If you don't see any contracts in the first few days, and your host says it's online, don't worry. If you still don't have any contracts after about a week, double check your pricing and find your host on SiaHub as mentioned above to see if it's showing as offline or having a low score compared to other hosts for other reasons.

For more tips, visit our Hosting FAQs page.


Advanced: Hosting via the Terminal

These settings are more for advanced users only.

If you want to host with less than 2,000 SC or change additional hosting settings like contract fees or separate upload/download bandwidth fees, you can use the Terminal in the Sia-UI to do so. You can also use the command line to interact with Sia directly via siac

Most host configuration is managed under host config. You can also manage storage folders under host folder. Type host config -h to see all available host config parameters:

Typing host config -h gives us helpful information.

Here are some descriptions of the available options. Each option follows host config - for example, you'd type host config acceptingcontracts false to disable accepting new contracts. You can also type host -v to see your current settings.

  • acceptingcontracts - same function as the "Accepting Contracts" slider in the Hosting UI page. Enables or disables new contracts, but does not cancel existing ones. Values are true or false.
  • maxduration - the maximum contract duration, in blocks. One week is approximately 1,008 blocks. Your host will not accept contracts longer than this value, but may accept shorter contracts. Default value is 26 weeks, or 25920 blocks. Not recommended to set this less than about 13 weeks, or about 13000 blocks.
  • maxdownloadbatchsize - the maximum number of bytes that the host will allow to be requested by a single download request. Default value is 17825792. This should not need to be changed.
  • maxrevisebatchsize - the maximum size in bytes of a single batch of file contract revisions. Default value is 17825792. This should not need to be changed.
  • netaddress - you can specify a custom IP address or domain name to announce (i.e. a DDNS service), along with the port. The default is your auto-detected public IP, and Sia's default port is 9982, i.e. 123.123.123.123:9982. You could also use something like myddnsdomain.com:9982.
  • windowsize - the number of blocks that the host has to get a storage proof onto the blockchain (or in other words, to prove you still have a renter's data). The window size is the minimum size of window that the host will accept in a file contract. Default is 144 blocks, or 1 day. Increasing this value would theoretically give your host more time to be offline in the event of a downtime issue without losing your collateral, but renters may not accept a larger value.
  • collateral - same function as the "Collateral per TB per Month (SC)" in the Hosting UI page, in SC.
  • collateralbudget - the maximum total collateral you're willing to put forward as a host across all contracts, in SC. This can be used to prevent too many contracts from draining your wallet of collateral, but if you hit your collateral budget you also won't be able to accept new contracts at that point.
  • maxcollateral - the maximum collateral you're willing to put up for one storage contract, in SC. For example, if your collateral was set to 100 SC/TB/Month and you set this to 600 SC, one single renter creating a 3 month (default) contract with you couldn't store more than 2 TB (2 TB x 3 months x 100 SC/TB/month collateral = 600 SC max, your limit) as a result. You could still have multiple renters storing more than 2 TB total between all of them.
  • mincontractprice - the minimum contract fee your host will accept, in SC. This typically shouldn't be more than 5 SC or so, and is only intended to cover transactions fees for creating contracts and facilitating payments on the network.
  • mindownloadbandwidthprice - same function as the "Bandwidth Price (SC/TB)" in the Hosting UI page, but only for download bandwidth, in SC.
  • minstorageprice - same function as the "Price per TB per Month (SC)" in the Hosting UI page, in SC. This is your base storage price.
  • minuploadbandwidthprice - same function as the "Bandwidth Price (SC/TB)" in the Hosting UI page, but only for upload bandwidth, in SC.

Hosting With Less Than 2,000 SC

If you're trying to host with less than 2,000 SC, follow these steps in the Terminal.

  1. Set your preferred pricing for storage, collateral, and bandwidth using the host config options above.
  2. Use host folder add "D:\FolderPath" 3000GB to add a storage folder, substituting your own folder path and size you wish to allocate.
  3. Accept contracts by typing host config acceptingcontracts true.
  4. Announce your host by typing host announce.

Keep in mind you can only accept as many contracts as you have the collateral to cover. If you're hosting with less than 2,000 SC, you likely won't be able to host more than a few Terabytes in practice.


Top
Highlight and share