serp-ctr 0.1.0

serp-ctr is a small Rust library for the arithmetic that search-console data needs before it means anything: click-through rate, impression-weighted average position, SERP page bucketing, pooled totals across many rows, and projected clicks against a CTR-by-position curve. It deliberately ships no built-in "average CTR by position" table. Published tables are third-party estimates that disagree with one another and shift with query intent and SERP layout, so baking one in would turn somebody else's sample into this library's constant. CtrCurve is built from the caller's own observed rows instead. It interpolates linearly between positions it has actually seen, never extrapolates past them, and returns an error rather than a number for a position it has never observed. No dependencies, #![forbid(unsafe_code)], MSRV 1.63, 15 unit tests plus doc-tests. Dual licensed MIT OR Apache-2.0. Source at github.com/theluckystrike/serp-ctr-rs, API documentation on docs.rs.

Tags rust library seo analytics statistics
License MITL
State initial

Recent Releases

0.1.008 Aug 2026 16:54 minor feature: Initial release. Click-through rate and impression-weighted average position, SERP page bucketing, pooled totals across rows, CtrCurve built from caller-supplied observations with clamped linear interpolation, and click projection. 15 unit tests.