rank_change_attribution
Determine if an on-site change increased or decreased page clicks by comparing against a control group. Returns estimated lift with 95% confidence interval and verdict: positive, negative, or inconclusive.
Instructions
Estimate whether an on-site change moved a page's clicks, using difference-in-differences against a control group of untouched pages (never a naked before/after). Returns an estimated lift with a 95% confidence interval and a three-state verdict (likely_positive / likely_negative / inconclusive), plus a confounders block (algo-update proximity, GSC data-regime breaks, control quality, sample sizes). Clicks-based (position/CTR were corrupted by the 2025 GSC bugs). Observational, not proof of causation -- a server-side split test is the only true causal test.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| url | No | The changed page URL (or use `urls`). | |
| urls | No | Multiple changed page URLs. | |
| query | No | Optional: restrict to one query. | |
| gap_days | No | Washout gap after the change for recrawl/re-rank. Default 7. | |
| pre_days | No | Pre-window length. Default 56 (>=2x post, per CausalImpact). | |
| site_url | No | Defaults to the configured default site. | |
| post_days | No | Post-window length. Default 28. | |
| change_date | Yes | Date the change shipped, ISO YYYY-MM-DD. Required. | |
| control_scope | No | Control pool: same path section, or whole site. Default section. |