Disputes, arbitration and flexible slashing

What can actually get you slashed, who decides, how much it costs, and the cheap habits that keep you out of it.

9 of 10 in the Indexer path advanced 12 min

Checked against Graph Horizon (2025-12-11)

Last read 2026-08-30 Due again 2026-11-30

Every protocol claim below was read at these sources on 2026-08-30. Where they disagree with each other, the lesson says so.

Slashing is the mechanism that makes an indexer’s answer worth trusting. Understanding it precisely is worth doing, because the folklore is more frightening than the reality and the reality has sharper edges in places the folklore ignores.

What can be disputed.

Two categories, and they are not equally likely.

A POI that disagrees with honest indexing. You published a commitment to derived data, and it does not match what other indexers derived from the same chain data. This is the main event.

A query response that was wrong. You served an answer that did not correspond to the indexed data.

Note what is not on the list. Downtime is not slashable. Being slow is not slashable. Serving no queries is not slashable. Those cost you revenue, which is the network’s way of handling them, and the distinction is deliberate: slashing is for claims that were false, not for service that was poor.

Who raises one, and at what cost.

A Fisherman raises a dispute and posts a deposit of at least 10,000 GRT.

The deposit is the mechanism that keeps disputes serious. Without it, raising them would be free and an indexer could be harassed by anyone with a grudge. With it, a challenger has to believe they are right by more than the deposit is worth.

The consequence for you is reassuring in one direction and not in the other. Frivolous disputes are expensive to bring, so you are unlikely to face one at random. A dispute you do face has somebody’s capital behind it, which means they think they have evidence.

Arbitration, and what flexible slashing means.

Arbitrators decide. Under Horizon the amount is a judgement rather than a fixed figure: arbitrators “determine appropriate slash amounts based on the severity and context of infractions”, capped at 10% of the indexer’s stake, with a recommended value of 2.5%.

This is a genuine improvement for honest operators. A fixed penalty had to be set high enough to deter deliberate misbehaviour, which meant an operator whose POI diverged because of an infrastructure fault faced the same consequence as one who deliberately served rubbish. Judgement within a cap lets those be treated differently.

It also means the outcome is not fully predictable in advance, and severity and context are human assessments. An operator who can show what went wrong, when they noticed and what they changed is in a materially different position from one who cannot. Keep records.

Keeping out of it.

The habits are cheap and the failure they prevent is not.

Compare POIs before publishing. Divergence from other indexers on the same deployment is detectable before it is disputable. Community tooling exists for exactly this, and consulting it costs nothing.

Pin your chain data sources. Most divergence traces to chain data differences rather than to anything you did wrong. An unreliable or subtly different endpoint is the usual culprit.

Track graph-node versions. Different versions can produce different results for the same subgraph. Knowing which version produced which POI is the difference between diagnosing a divergence in an hour and arguing about it for a week.

Do not publish a POI you cannot explain. If a deployment has been through something odd, a resync, a rollback, a version change, check before publishing rather than after.

Keep an operational log. When a dispute is judged on severity and context, being able to show what happened is worth real money.

Before reading on: why require a deposit from the Fisherman rather than letting anyone raise a dispute freely?

Because free disputes are a denial-of-service tool.

Arbitration costs the arbitrators time and the accused indexer attention and uncertainty. If raising one were free, a competitor could file continuously against every rival, and honest operators would spend their days defending themselves.

The deposit prices the challenger’s confidence. Somebody who genuinely believes an indexer published a false POI can afford to risk it. Somebody fishing cannot afford to be wrong repeatedly.

It is the same design idea as the thawing period and the curation deposit charge: where a mechanism could be abused by acting cheaply and often, attach a cost to acting and let the cost do the filtering. Once you notice the pattern it turns up throughout the protocol.

Check yourself

Which of these can get an indexer slashed?

Why must a Fisherman post a deposit to raise a dispute?

What is the practical benefit of flexible slashing for an honest operator?