<p>In <a href="https://bitcoin.stackexchange.com/q/102273/115128">this question</a> I discussed the option of self hosting the Bitcoin node vs. using 3rd party services with API access. I quoted a colleague who said that &quot;for every coin we wish to support, we will be required to hire a dedicated expert developer to maintain each node at a cost of $40,000 per year per node&quot;.</p>
<p>Although this was not the main point of my other question, I received a polarizing response to this quote.</p>
<p>For example, the user @Anonymous commented:</p>
<blockquote>
<p>Where could they have possibly got the idea that maintaining a bitcoin
node costs $40,000 a year?</p>
</blockquote>
<p>In response, the user @chytrik wrote:</p>
<blockquote>
<p>Perhaps not for bitcoin, but for some poorly developed altcoins that
number is maybe too low – chytrik</p>
</blockquote>
<p>A similar sentiment to @chytrik has been echoed by @Murch♦:</p>
<blockquote>
<p>I agree, developers with a cryptocurrency background is not neither
cheap nor abundant. Obviously, it depends on your location, but I
suspect that you may find that $40,000 p.a. to be actually highly
optimistic. In the US, you'd probably be looking at $150k+ per
position (salary+rest).</p>
</blockquote>
<p>Since this site is for Bitcoin, the focus of my question will be exclusively on Bitcoin.</p>
<p>Is there a <em>practical way of quantifying the cost</em> associated with self hosting the Bitcoin node? This includes the cost of hosting, scaling and hiring a competent developer to setup and debug the node. Obviously, a big part of the evaluation is likely to depend on the number of expected transaction so let's assume for this example we are dealing with an app that will scale from 5,000 to 500,000 customers at some point or from 500 to 50,000 requests per day.</p>
<p>What is a practical way of quantifying the long term costs involved and what type of maintenance/upgrades would a developer be required to do in the long term?</p>

CC BY-SA 4.0
2021-02-07T04:08:51.193Z
the answer is going to depend on the specifics of what you are planning to use the node for. If you require functionality beyond what bitcoin-core (or some related open-source project, like btcpayserver) provides, there will likely be associated cost. eg Bitcoin-core running on a basic raspberryPi setup will need basically no hands-on maintenance, but building an enterprise solution that can handle serving a lot of customers with proper security is going to be more resource intensive to create and maintain.
chytrik
CC BY-SA 4.0
2021-02-07T04:19:41.403Z
What about using an open source Blockchain API like https://insight.is for Enterprise purpose? Supposedly, it supports a "complete REST and Websocket API for querying blocks, transactions, and addresses; and receiving live updates". I'm not concerned about the initial setup costs, only the long term costs associated with hosting and hiring a developer to maintain, debugg and scale an application like this.
Design X
CC BY-SA 4.0
2021-02-07T04:32:44.840Z
I'm not intimately familiar with that project, or your specific requirements. For eaxmple will you just need to receive payments? Provide wallets for customers? With what functionality? At what scale? etc. It might be tough for someone to write a comprehensive answer to your question as posed, considering the number of variables and unknowns involved. I have a node running on some old hardware that requires literally almost zero maintenance for years now, but that alone wouldn't be sufficient to run a bitcoin-business on top of.
chytrik
CC BY-SA 4.0
2021-02-07T04:43:31.883Z
@chytrik thanks for your reply. We need to be able to receive ongoing deposits from our customers & provide each customer with a unique wallet address for their deposits. We will need to be notified when a customer makes a deposit and confirm each transaction on the blockchain. Then we forward funds to a consolidation address (cold storage). We need to get all info about a specific address. We will also need to give customers the option to withdraw funds from their wallet. We are dealing with approx. 500,000 customers in total (not all of them are active on a regular basis).
Design X
CC BY-SA 4.0
2021-02-07T05:31:25.717Z
There may be existing open-source software like btcpayserver that does pretty much what you want. If you don't need to build custom infrastructure, your costs are going to be spectacularly lower.
Pieter Wuille
<bitcoin-core><client><api><full-node>
Quantifying the long term costs associated with self hosting the Bitcoin node?
Design X
# Quantifying the long term costs associated with self hosting the Bitcoin node?

(Asked by: username_0 on 2021-02-07)

In [this question](https://bitcoin.stackexchange.com/q/102273/115128) I discussed the option of self hosting the Bitcoin node vs. using 3rd party services with API access. I quoted a colleague who said that "for every coin we wish to support, we will be required to hire a dedicated expert developer to maintain each node at a cost of $40,000 per year per node".

Although this was not the main point of my other question, I received a polarizing response to this quote.

For example, the user @Anonymous commented:

> Where could they have possibly got the idea that maintaining a bitcoin
> node costs $40,000 a year?

In response, the user @username_1 wrote:

> Perhaps not for bitcoin, but for some poorly developed altcoins that
> number is maybe too low – username_1

A similar sentiment to @username_1 has been echoed by @Murch♦:

> I agree, developers with a cryptocurrency background is not neither
> cheap nor abundant. Obviously, it depends on your location, but I
> suspect that you may find that $40,000 p.a. to be actually highly
> optimistic. In the US, you'd probably be looking at $150k+ per
> position (salary+rest).

Since this site is for Bitcoin, the focus of my question will be exclusively on Bitcoin.

Is there a *practical way of quantifying the cost* associated with self hosting the Bitcoin node? This includes the cost of hosting, scaling and hiring a competent developer to setup and debug the node. Obviously, a big part of the evaluation is likely to depend on the number of expected transaction so let's assume for this example we are dealing with an app that will scale from 5,000 to 500,000 customers at some point or from 500 to 50,000 requests per day.

What is a practical way of quantifying the long term costs involved and what type of maintenance/upgrades would a developer be required to do in the long term?

**Tags:** bitcoin-core, client, api, full-node

> **Comments:**
> **username_1**: the answer is going to depend on the specifics of what you are planning to use the node for. If you require functionality beyond what bitcoin-core (or some related open-source project, like btcpayserver) provides, there will likely be associated cost. eg Bitcoin-core running on a basic raspberryPi setup will need basically no hands-on maintenance, but building an enterprise solution that can handle serving a lot of customers with proper security is going to be more resource intensive to create and maintain.  
> **username_0**: What about using an open source Blockchain API like https://insight.is for Enterprise purpose? Supposedly, it supports a "complete REST and Websocket API for querying blocks, transactions, and addresses; and receiving live updates". I'm not concerned about the initial setup costs, only the long term costs associated with hosting and hiring a developer to maintain, debugg and scale an application like this.  
> **username_1**: I'm not intimately familiar with that project, or your specific requirements. For eaxmple will you just need to receive payments? Provide wallets for customers? With what functionality? At what scale? etc. It might be tough for someone to write a comprehensive answer to your question as posed, considering the number of variables and unknowns involved. I have a node running on some old hardware that requires literally almost zero maintenance for years now, but that alone wouldn't be sufficient to run a bitcoin-business on top of.  
> **username_0**: @username_1 thanks for your reply. We need to be able to receive ongoing deposits from our customers & provide each customer with a unique wallet address for their deposits. We will need to be notified when a customer makes a deposit and confirm each transaction on the blockchain. Then we forward funds to a consolidation address (cold storage). We need to get all info about a specific address. We will also need to give customers the option to withdraw funds from their wallet. We are dealing with approx. 500,000 customers in total (not all of them are active on a regular basis).  
> **username_2**: There may be existing open-source software like btcpayserver that does pretty much what you want. If you don't need to build custom infrastructure, your costs are going to be spectacularly lower.  

---

## 0 answers

