BTC €58’307Distance to floor −4.6 %Zone Floor zone€1 = 1’715 sats
21Bitcoin Power Law

Choose a calculator

Magazine · Power Law

How to Calculate the Power Law Yourself

Calculate the Bitcoin Power Law yourself: our CSV, LOG10 and LINEST in Excel, LibreOffice or Google Sheets, step by step up to the floor.

By · · 13 min read

You can calculate the Power Law yourself with a spreadsheet and half an hour. You need the daily closing prices, the days since the genesis block of 3 January 2009 and a linear regression on the logarithms of both numbers. With our CSV file up to 7 November 2026 you get an exponent of 5.636 and a coefficient of determination of 0.962. The site calculates with the published exponent 5.688. Why both numbers are right, and how to check every line on the site, follows below step by step.

Why calculate the Power Law yourself

A model you cannot recalculate is a model you have to believe. The Power Law is one of the few Bitcoin models where that is not necessary. It has two numbers, one data series and a method every statistics textbook explains in its first chapter. What the lines mean and how to read them is covered in Bitcoin Power Law explained. This article is about the craft: open the file, build the columns, run the regression, check the result.

You learn three things along the way that no chart shows. How strongly the result depends on where your data ends. Why the prices of 2010 to 2013 carry so much weight. And that a coefficient of determination of 0.96 does not mean the price will be on the line tomorrow.

The data: what is in the CSV file

Download /power-law/btc-daily.csv. It is free and needs no sign-up, one row per day, without gaps. The columns:

ColumnContentExample 7 Nov 2026
datedate (UTC)2026-11-07
close_usdclosing price in US dollars75868
days_since_genesisdays since 3 Jan 20096517
trend_usdthe site's trendabout 108’300
floor_usdthe site's floorabout 66’766
residual_log10log10(price ÷ trend)about −0.155

The first row is 18 July 2010 at $0.08584, day 561. There are no exchange prices before that. Up to 7 November 2026 there are 5’957 rows. The site keeps appending new daily closes, so your file probably has a few more rows. Your results will then differ in the third decimal place.

The days_since_genesis column is already filled in. If you want to build it yourself, for other price data for instance, it is a subtraction: date minus 3 January 2009. In Excel =A2-DATE(2009,1,3). 3 January 2009 is day 0, the day of the genesis block.

Step 1: Take the logarithms

The Power Law says the price grows like a power of time: price = 10^a × days^b. On ordinary paper that is a steeply bending curve. Take the logarithm of both sides and it becomes a straight line:

log10(price) = a + b × log10(days)

Any spreadsheet can fit a straight line to points. So you need two new columns. Assume the file is in columns A to F with headers in row 1:

  • Column G, header x: =LOG10(C2) (days)
  • Column H, header y: =LOG10(B2) (price)

Fill both formulas down to the last row. LOG10 has the same name in every program and language. Whether you use the base-10 or the natural logarithm makes no difference to the exponent b; only a changes its size. The site and the usual notation use log10, so stay with it.

Some rows then look like this:

DatePriceDaysx = log10(days)y = log10(price)
18 Jul 2010$0.085845612.7490−1.0663
4 Dec 2013$1’134.931’7963.25433.0550
16 Dec 2017$19’640.513’2693.51444.2932
8 Nov 2021$67’525.104’6923.67144.8295
21 Nov 2022$15’783.505’0703.70504.1982
7 Nov 2026$75’868.006’5173.81404.8801

Look at the x column. The first three and a half years cover the range from 2.75 to 3.25. The last nine years are squeezed between 3.51 and 3.81. On a logarithmic time axis the early years are stretched wide and the late ones compressed. Why it looks like that is shown in How to read the Bitcoin log chart, in the section on the log-log chart.

Step 2: The regression with LINEST or RGP

Now fit the line. The easiest way is two separate functions:

QuantityExcel English, Google SheetsExcel and LibreOffice German
exponent b (slope)=SLOPE(H2:H5958,G2:G5958)=STEIGUNG(H2:H5958;G2:G5958)
number a (intercept)=INTERCEPT(H2:H5958,G2:G5958)=ACHSENABSCHNITT(H2:H5958;G2:G5958)
coefficient of determination R²=RSQ(H2:H5958,G2:G5958)=BESTIMMTHEITSMASS(H2:H5958;G2:G5958)

The y values come first, then the x values. Swap them and you compute the regression of days on price, and the exponent is wrong.

LINEST (German RGP) delivers everything at once: =LINEST(H2:H5958,G2:G5958,TRUE,TRUE). It returns a block of five rows and two columns. In current Excel and in Google Sheets it spills into the neighbouring cells by itself; in older Excel you select the block and confirm with Ctrl+Shift+Enter. Top left is b, top right a, R² on the left of the third row, and the second row holds the standard errors of both numbers.

If your program allows it, you can also check this graphically: a scatter chart of days and price, both axes logarithmic, then a trendline of type Power with the equation shown on the chart. Excel computes this trendline internally the same way, through the logarithms. It shows the equation as y = c × x^b, where c = 10^a. With the data above it reads y = 5E−17 × x^5.6355 or similarly rounded, since 10^−16.332 ≈ 4.66 × 10⁻¹⁷.

How the regression works

We are looking for a and b that make the sum of squared distances as small as possible:

Σ (yᵢ − a − b × xᵢ)² → minimum, with xᵢ = log10(daysᵢ), yᵢ = log10(priceᵢ)

The solution (least squares):

b = Σ (xᵢ − x̄)(yᵢ − ȳ) ÷ Σ (xᵢ − x̄)²

a = ȳ − b × x̄

R² = 1 − Σ (yᵢ − a − b × xᵢ)² ÷ Σ (yᵢ − ȳ)²

Every day counts equally. That is exactly what SLOPE, INTERCEPT, RSQ and LINEST do, and exactly how the site computes its check regression.

Back to dollars: price = 10^a × days^b. For day 6’518 (8 Nov 2026): 10^−16.332 × 6’518^5.636 ≈ $145’500.

Step 3: Compare with the site's formula

The site does not draw your line but the published formula with a = −16.493 and b = 5.688. That is what the methodology page states, and other Power Law sites calculate with it too. The reason: a regression rerun every day moves the line for the entire past with every new price. A floor that changes retroactively is useless for planning.

Your regression is the check. Run it on data up to the end of 2025 by shortening the ranges in the formulas to the rows up to 31 December 2025. You then get a = −16.540 and b = 5.700. That matches the fixed formula to within about 1 %. With 2026's prices b drops to 5.636, because the year was well below the line. How strongly a and b react to the end of the data, the start date and the weighting is worked through in the sensitivity analysis. You don't have to explain the difference here, only see it.

Lineabvalue on 7 Nov 20261 Jan 2030
the site's fixed formula−16.4935.688about $159’000about $401’000
your regression up to 7 Nov 2026−16.3325.636about $145’400about $363’000

Two lines whose exponents differ by 0.05 are 9 % apart today and slowly drift further apart. That is the honest blur of a two-number model.

Step 4: Check floor, trend and residual

Now check the site's columns. Add three more columns:

  • Column I, power law: =10^(-16.493)*C2^5.688
  • Column J, your floor: =0.42*I2
  • Column K, difference: =J2/E2-1

In a German-language spreadsheet write commas instead of points and semicolons instead of commas. The difference in column K must be close to zero on every row. For 7 November 2026 the calculation gives 0.42 × $158’966 = $66’766, and that is exactly what floor_usd says. The floor is then fully recalculated: a fixed formula that never changes.

The trend takes more work. It is the lower of the power law and the middle between floor and top band. The top band is refitted to the cycle tops with every new daily close; the methodology page gives its two numbers as of today. As of November 2026 it reads: top band = floor × e^(3.56 ÷ (1 + (days ÷ 4’692)³)). With that you can recalculate the trend as well:

  • Column L, top band: =J2*EXP(3.56/(1+(C2/4692)^3))
  • Column M, trend: =MIN(I2,SQRT(J2*L2))
  • Column N, residual: =LOG10(B2/M2)
Recalculation for 7 Nov 2026 (day 6’517)

Power law = 10^−16.493 × 6’517^5.688 ≈ $158’966

Floor = 0.42 × 158’966 ≈ $66’766

Top band = 66’766 × e^(3.56 ÷ (1 + (6’517 ÷ 4’692)³)) = 66’766 × e^(3.56 ÷ 3.680) ≈ $175’700

Middle = √(66’766 × 175’700) ≈ $108’300

Trend = min(158’966; 108’300) = $108’300

Residual = log10(75’868 ÷ 108’300) ≈ −0.155, so the price was about 30 % below the trend.

Against the pure power law: log10(75’868 ÷ 158’966) ≈ −0.321, about 52 % below.

Since January 2022 the middle has been the lower of the two lines; before that it was the power law. Fill column M for all days and you see the switch on 29 January 2022. The reasoning behind this form is in the methodology and the research paper.

What the calculation shows and what it doesn't

An R² of 0.962 sounds like an almost perfect forecast. All it says is that time explains 96 % of the spread of the logged prices over sixteen years. Most of that spread is the rise from 8 cents to tens of thousands of dollars, eight powers of ten. Against such a range even 75 % crashes look small. In 2026 the price was at times at half the line, and the R² barely moved.

Two more things you can try in your own sheet:

Start later. Let the data begin on 1 January 2013 or 2015. The exponent changes noticeably, because the early years take up so much room on the logarithmic time axis.

Look at the residuals. Plot column N over time. The deviations run in long waves, staying on one side for months and years. A price below the line today is almost certainly below it tomorrow too. Statistically this means the days are not independent measurements, and the standard error LINEST reports is too small. What this means for the model's credibility is discussed in Criticism of the Bitcoin Power Law.

From your own sheet to your own plan

Once your columns are right, you have a tool you can keep using. Enter a future date as a day number in column C, and column J shows the floor on that day. Around 1 January 2030 the floor reaches about $168’000 (0.42 × $401’000). For euros or Swiss francs, divide by the exchange rate of your reference date; the site itself converts its euro and franc figures with the ECB reference rates.

For most questions you don't need to calculate anything yourself. The forecast calculator shows floor, trend and top band for any date, the Power Law page today's values. Your own sheet pays off when you want to change assumptions: a different exponent, a different floor factor, a different data window. Then you see in black and white how much your plan depends on each number.

Frequently asked questions

What data do I need to recalculate the Power Law?

The daily closing prices in US dollars and, for each day, the number of days since 3 January 2009. Both are in the site's CSV file at /power-law/btc-daily.csv, free to download.

What is LINEST called in German Excel?

RGP. The single functions are STEIGUNG (SLOPE), ACHSENABSCHNITT (INTERCEPT) and BESTIMMTHEITSMASS (RSQ). LOG10 is the same in every language. LibreOffice in German uses the same German names as Excel.

Why do I get a different exponent from 5.688?

Because your regression includes all prices up to today. With prices up to the end of 2025 you get 5.700, with all of them up to 7 November 2026 you get 5.636. The site calculates with the fixed, published formula and uses the regression as a check.

Do I need the base-10 or the natural logarithm?

For the exponent b it makes no difference. Only the intercept a changes size. The site's formula is written with log10; use LOG10 and you can compare directly.

Why does my spreadsheet show only text after importing?

Because the CSV uses decimal points and a spreadsheet with a German-language locale expects commas. Import the file via Data → From Text/CSV and set the locale to English (United States).

Can I forecast the price with my sheet?

You can compute the lines for any future date. Where the price will be, the regression does not say. It describes sixteen years of the past, and the price has spent years well above or below it.

Sources

Not financial, legal or tax advice. Models are no guarantee.

Tags:

The Bitcoin Power Law newsletter

An email when we publish a new article or calculator. Every issue has a one-click unsubscribe link.

← All articles