<p>To answer the question I believe you have:</p>
<p>&quot;Progress increase per hour:  0.25%&quot; means that 0.25% of the blockchain is synchronized per hour, or that total from-scratch synchronization (assuming the current rate is constant) takes 100%/0.25% = 400 hours.</p>
<p>It does <strong>not</strong> mean that the <em>speed</em> of synchronization is increasing over time. In general, it will go down.</p>
<hr />
<p>To answer your question as phrased:</p>
<p>There are many reasons why the progress rate would not be constant. The progress percentage is the ratio between the total number of validated transactions divided by an estimate of the total number of transactions in the chain, but:</p>
<ol>
<li>Not every transaction is equally complex, and the makeup of typical transactions has changed during Bitcoin's lifetime.</li>
<li>Signature validation is only performed after the assumevalid point, likely just the last few % of the chain (unless you manually configured it to be something else).</li>
<li>The size of the UTXO database grows dramatically throughout the blockchain. A larger database is slower to operate on, especially once it no longer fits in the in-RAM cache.</li>
<li>The estimate of the number of transactions may grow slightly more accurate as the chain progresses.</li>
<li>The peers you are downloading from may change, sometimes a peer that is providing you data quickly goes offline. Sometimes slow peers are kicked (this mostly matters if the network aspect is the bottleneck).</li>
<li>Your computer may be doing other things at the same time, which change.</li>
</ol>

CC BY-SA 4.0
2024-06-06T23:39:20.087Z
These points show there can be variability in the syncing rate, but not necessarily an _increase_ in it. Points 2 & 3 would seem to imply a _decrease_ in the syncing rate.
Geremia
CC BY-SA 4.0
2024-06-06T23:55:19.837Z
I think you're misinterpreting "progress increase per hour" as "progress **rate** increase per hour". That "0.25%" is just the rate of synchronization: the percentage of the entire blockchain which is synchronized per hour. The sync rate does not generally increase over time, but progress obviously does increase.
Pieter Wuille
CC BY-SA 4.0
2024-06-07T02:49:53.990Z
Thanks for the clarification.
Geremia
CC BY-SA 4.0
2024-06-06T23:25:10.023Z
2024-06-06T23:59:19.593Z
2024-06-06T23:59:19.593Z
Pieter Wuille
<p>When syncing the blockchain with Bitcoin Core, why is there a &quot;progress increase per hour&quot;? Why wouldn't the syncing rate be constant?</p>
<p><a href="https://bitcoin.stackexchange.com/q/114690/4334"><img src="https://i.sstatic.net/jVwdc.jpg" alt="progress per hour" /></a></p>

<bitcoin-core><synchronization>
Why is there a "progress increase per hour"?
Geremia
# Why is there a "progress increase per hour"?

(Asked by: username_0 on 2024-06-06)

When syncing the blockchain with Bitcoin Core, why is there a "progress increase per hour"? Why wouldn't the syncing rate be constant?

[![progress per hour](https://i.sstatic.net/jVwdc.jpg)](https://bitcoin.stackexchange.com/q/114690/4334)

**Tags:** bitcoin-core, synchronization


---

## 1 answers

### Answer by username_1 on 2024-06-06. Score: 2 | Accepted answer

To answer the question I believe you have:

"Progress increase per hour: 0.25%" means that 0.25% of the blockchain is synchronized per hour, or that total from-scratch synchronization (assuming the current rate is constant) takes 100%/0.25% = 400 hours.

It does **not** mean that the *speed* of synchronization is increasing over time. In general, it will go down.

---

To answer your question as phrased:

There are many reasons why the progress rate would not be constant. The progress percentage is the ratio between the total number of validated transactions divided by an estimate of the total number of transactions in the chain, but:

1. Not every transaction is equally complex, and the makeup of typical transactions has changed during Bitcoin's lifetime.
2. Signature validation is only performed after the assumevalid point, likely just the last few % of the chain (unless you manually configured it to be something else).
3. The size of the UTXO database grows dramatically throughout the blockchain. A larger database is slower to operate on, especially once it no longer fits in the in-RAM cache.
4. The estimate of the number of transactions may grow slightly more accurate as the chain progresses.
5. The peers you are downloading from may change, sometimes a peer that is providing you data quickly goes offline. Sometimes slow peers are kicked (this mostly matters if the network aspect is the bottleneck).
6. Your computer may be doing other things at the same time, which change.

> **Comments:**
> **username_0**: These points show there can be variability in the syncing rate, but not necessarily an _increase_ in it. Points 2 & 3 would seem to imply a _decrease_ in the syncing rate.  
> **username_1**: I think you're misinterpreting "progress increase per hour" as "progress **rate** increase per hour". That "0.25%" is just the rate of synchronization: the percentage of the entire blockchain which is synchronized per hour. The sync rate does not generally increase over time, but progress obviously does increase.  
> **username_0**: Thanks for the clarification.  

---

