The blockchain can't hide its excitement
1 Β· Gas = demand
Gas is the toll for using Ethereum. It's set by pure supply & demand: more people transacting β higher fees. It can't be faked or wished higher.
2 Β· Fees move in tides
In manias, people pay $28+ per transaction. In despair, the same transfer costs a fraction of a cent. That swing is the tide β and it tracks the market cycle.
3 Β· Turns mark the cycle
When the tide turns out from a high, manias are ending. When it comes back in from a low, the crowd is quietly returning. Those turns are the signal.
Every call since 2017, on one chart
ETH's full price history with every β² BUY and βΌ SELL the Gas Tide signal produced β computed only from gas-fee data available at the time, no hindsight. Shaded bands show when the tide was unusually high (euphoria) or low (apathy).
ETH price Β· Gas Tide buy & sell calls
The Gas Tide oscillator
Eleven years of gas, two ways to measure it
The same fee, in crypto terms (gwei β Ethereum's internal unit for gas) and in dollars (what a simple ETH transfer actually cost that day). Note the dotted markers: upgrades like the L2 era and the Dencun update structurally crushed fees β which is why Gas Tide measures fees relative to their own recent past, not in absolute terms.
Gas price (gwei) & cost of a simple transfer (USD)
ETH price, full history
Did it actually work?
Two independent tests. First: what happened to ETH after high-tide and low-tide days β across all 3,900+ days of history. Second: the literal trade list β follow every call with no discretion, switching between ETH and cash.
Median ETH return after a day in each tide zone vs. all days baseline. High-tide days led the biggest gains β euphoria means the bull run is on (the danger is when the tide then turns). Low-tide days led the weakest returns until the tide turned back in.
Following the tide vs. just holding
Every trade the signal produced
| # | Bought | at | Sold | at | Return | Note |
|---|
Retired β every trade v1 produced (2017 β 27 Aug 2026)
| # | Bought | at | Sold | at | Return |
|---|
The two formulas
The two halves deliberately read different numbers. LEVEL reads total daily fee revenue denominated in ETH β how much the network charged, measured in the network's own unit. MOMENTUM reads the daily transaction count β how many people showed up. Both look only backward; nothing in the math peeks at the future.
Neither input contains a dollar. That is on purpose. A fee measured in USD silently carries the ETH price inside it, so an indicator built on it can end up reading price momentum back to itself and calling that a signal. We tested exactly that: the same machine driven by ETH price alone returns 0.14Γ what simply holding would have. Whatever this indicator knows, it did not learn from the price.
1 Β· Tide Level β "how high is the water?"
Asks: is the network collecting unusually large or unusually small fees compared to the last year? Above +1.5 = euphoria (high tide). Below β1.25 = apathy (low tide). Using a rolling yardstick is what keeps it honest across eras β the absolute numbers moved by orders of magnitude between 2017 and now, but "expensive relative to this year" survives that.
2 Β· Tide Momentum β "which way is it flowing?"
The derivative, and deliberately a different question from the one LEVEL asks: is participation building or draining? Revenue can hold up while the crowd leaves β a few large transactions paying a lot is not the same signal as many people arriving. Splitting the two is what separates this from the retired v1 below, which asked one question twice.
The Gas Tide signal = (LEVEL + MOMENTUM) Γ· 2
The average of the two, with a neutral band in the middle so it doesn't flip-flop. Crossing up through the band = tide coming in (buy). Crossing down = tide going out (sell). That's the entire system β two thresholds, no exceptions, no overrides.
π 27 August 2026 β the headline indicator was replaced
Until today this page ran v1: the per-transaction fee in dollars, with both halves of the signal reading that same number. It has been retired. Here is why, with its record left intact.
- It stopped beating the alternative. Refreshed to 26 Aug 2026, v1 returns β against β for simply holding ETH. That is not an edge, it is a tie.
- Its edge was one lucky setting. We test every indicator across a 16-cell grid of buy/sell thresholds. Only 3 of v1's 16 cells beat holding. Nudge the Β±0.25 band and it loses. The replacement clears holding in 11 of 16.
- It sold the exact bottom. On 25 June 2026 v1 sold at $1,565 β the lowest close of the cycle to that point β and then sat in cash through a 60% recovery. Its worst completed round trip, β, is trade 10 in the retired table below and has been on this page since it happened.
- What replaced it, and the honest caveat. V6m reads fee revenue in ETH and transaction count β no dollar anywhere, so it cannot be secretly re-reading the ETH price. It beats holding in every era since the fee market matured in 2017 β including the current rollup era β though in Ethereum's first two years it lost heavily to simply holding, as nearly everything did. But its own worst grid cell returns Γ601 against holding's Γ905 β so it does not clear the bar we set for our research page, and we are saying so on the day we promote it. It is here because it beats the thing it replaced on every measure we have, not because it is safe.
- Both are out of the market right now, and both are wrong about it. Since 1 July ETH is up 56% and every version of this indicator has been sitting in cash. The re-entry rule is the weakest part of the system and we have not fixed it.
The retired v1 track record β every trade it ever produced, unedited β is published below the live table. A promotion should not be able to delete the evidence it was judged on.
βοΈ What this is not β read before believing
- Few cycles. Ethereum has had ~5 major cycles. Any backtest on 5 cycles can flatter itself. The forward-return tables (3,900+ days) are the more robust evidence; the trade list is the more impressive one.
- Threshold sensitivity. The Β±0.25 band was chosen by backtest. Nearby values still produce sensible calls at similar dates, but the headline multiple moves around. Treat the exact multiple shown above as illustrative, not a promise β it moves with every data refresh.
- Structural change. Rollups and the Dencun upgrade permanently lowered fees. The rolling z-scores adapt within ~a year, but a future fee-market redesign could blind the indicator for a while.
- Known misses. It was ~3 months early selling the 2021 double-top (sold the May mania, re-bought, took a small loss on the November chop), and panic crashes (COVID, March 2020) spike fees during the fall β the tide called the re-entry beautifully but not the crash itself.
- Not financial advice. This is a public experiment in reading on-chain data. Do your own research.