comparative-fault¶
Apply US comparative-negligence rules to a damages award. When more than one party is at fault, the claimant's recovery is reduced by their own share of responsibility — and US states do that in four materially different ways.
comparative-fault is a pure-Rust, zero-dependency crate implementing all four
regimes. It is the math behind the
WorthMyClaim settlement estimator, a free tool for
sizing injury claims.
The four regimes¶
| Rule | Reduction | Recovery barred at |
|---|---|---|
| Pure comparative | By fault share | never |
| Modified, 50% bar | By fault share | fault ≥ 50% |
| Modified, 51% bar | By fault share | fault > 50% |
| Contributory | — | any fault at all |
Where the rules diverge¶
The two modified rules look almost identical and differ at exactly one point: an even split. Under a 50% bar a claimant found equally responsible recovers nothing. Under a 51% bar the same claimant recovers half.
An even split is a common settlement posture, so this is not an edge case — it is the single most consequential thing to know about the jurisdiction a claim sits in. It is also why insurers argue over fault percentage rather than damages: moving an assessment from 49 to 50 in a 50%-bar state does not reduce the payout, it eliminates it.
Install¶
Quick example¶
use comparative_fault::{net_recovery, Rule};
// 20% at fault on a 100,000 award, pure comparative.
assert_eq!(net_recovery(100_000.0, 0.20, Rule::Pure), 80_000.0);
// Exactly 50% at fault: barred under a 50% rule, halved under a 51% rule.
assert_eq!(net_recovery(100_000.0, 0.50, Rule::Modified50), 0.0);
assert!((net_recovery(100_000.0, 0.50, Rule::Modified51) - 50_000.0).abs() < 1e-6);
Not legal advice
These are estimates for modelling only. Fault apportionment is decided on evidence by a court or in negotiation, and jurisdiction rules change. Interactive estimator: WorthMyClaim.
Links¶
- Crate:
comparative-faulton crates.io - API docs: docs.rs/comparative-fault
- Interactive tool: WorthMyClaim settlement estimator