{"schema":"com.streetproof.public_methodology_metrics.v1","generated_at":"2026-07-09T08:52:42.931Z","reporting_window":{"label":"Q3 2026","starts_at":"2026-07-01T00:00:00.000Z","ends_at":"2026-10-01T00:00:00.000Z","cadence":"quarterly"},"urls":{"page":"https://streetproof.com/methodology/metrics","json":"https://streetproof.com/api/v1/methodology/metrics","methodology":"https://streetproof.com/methodology","transparency":"https://streetproof.com/transparency","corrections":"https://streetproof.com/corrections"},"summary":{"observations":139,"public_observations":139,"provisional_observations":0,"verified_observations":115,"redacted_observations":0,"public_entities":12,"match_candidates":0,"reviewed_candidates":0,"removal_requests":0},"headline_metrics":[{"key":"entity_match_review_support_rate","label":"Entity-match review support rate","value":null,"unit":"percent","sample_size":0,"status":"not_yet_reportable","note":"No reviewed candidate sample is available in the current live database."},{"key":"review_overturn_rate","label":"Review overturn rate","value":null,"unit":"percent","sample_size":0,"status":"not_yet_reportable","note":"Reviewed machine candidates rejected by a human reviewer. Merged candidates are tracked separately from outright rejections."},{"key":"false_positive_correction_rate","label":"False-positive correction rate","value":0,"unit":"percent","sample_size":139,"status":"reportable","note":"Redacted observations divided by public plus redacted observations. This captures material corrections, not every low-confidence candidate stopped before publication."},{"key":"avg_dispute_resolution_hours","label":"Average time to dispute resolution","value":null,"unit":"hours","sample_size":0,"status":"not_yet_reportable","note":"No resolved removal or dispute requests are present in the current live database."},{"key":"redaction_count","label":"Redaction count","value":0,"unit":"count","sample_size":139,"status":"reportable","note":"Observation rows hidden from public surfaces through the audited redaction path. Rows are not deleted from the append-only ledger."},{"key":"avg_candidate_review_hours","label":"Average candidate review age","value":null,"unit":"hours","sample_size":0,"status":"not_yet_reportable","note":"Average elapsed time from entity-match candidate creation to human review. This is an operations metric, not a model accuracy metric."}],"ocr_sample":{"sampled_observations":139,"observations_with_ocr_confidence":139,"avg_ocr_confidence":0.942,"high_confidence_rows":130,"low_confidence_rows":9,"precision":{"key":"ocr_precision_holdout","label":"OCR precision sample","value":null,"unit":"percent","sample_size":0,"status":"not_yet_reportable","note":"A labeled OCR holdout set has not closed yet. Current public numbers show OCR confidence distribution only; precision will publish once labels are available."},"recall":{"key":"ocr_recall_holdout","label":"OCR recall sample","value":null,"unit":"percent","sample_size":0,"status":"not_yet_reportable","note":"Recall needs a labeled set of visible text spans. StreetProof will not infer recall from model confidence."}},"entity_match_sample":{"candidates":0,"reviewed":0,"supported":0,"rejected":0,"accuracy_proxy":{"key":"entity_match_review_support_rate","label":"Entity-match review support rate","value":null,"unit":"percent","sample_size":0,"status":"not_yet_reportable","note":"No reviewed candidate sample is available in the current live database."},"review_overturn_rate":{"key":"review_overturn_rate","label":"Review overturn rate","value":null,"unit":"percent","sample_size":0,"status":"not_yet_reportable","note":"Reviewed machine candidates rejected by a human reviewer. Merged candidates are tracked separately from outright rejections."},"status_mix":[]},"dispute_metrics":{"removal_requests":0,"resolved_requests":0,"redacted_requests":0,"average_resolution_hours":{"key":"avg_dispute_resolution_hours","label":"Average time to dispute resolution","value":null,"unit":"hours","sample_size":0,"status":"not_yet_reportable","note":"No resolved removal or dispute requests are present in the current live database."},"redaction_count":{"key":"redaction_count","label":"Redaction count","value":0,"unit":"count","sample_size":139,"status":"reportable","note":"Observation rows hidden from public surfaces through the audited redaction path. Rows are not deleted from the append-only ledger."}},"coverage_by_city":[{"city_slug":"calgary","city_name":"Calgary","observed_cells":97,"public_observations":139,"public_entities":12,"latest_observed_at":"2026-06-30T00:25:54.050Z","confidence_level":"low","confidence_note":"StreetProof has started observing this city, but not-observed businesses should not be treated as absent or inactive."},{"city_slug":"edmonton","city_name":"Edmonton","observed_cells":0,"public_observations":0,"public_entities":0,"latest_observed_at":null,"confidence_level":"none","confidence_note":"StreetProof has no usable coverage here yet. Absence of observations means nothing."},{"city_slug":"red-deer","city_name":"Red Deer","observed_cells":0,"public_observations":0,"public_entities":0,"latest_observed_at":null,"confidence_level":"none","confidence_note":"StreetProof has no usable coverage here yet. Absence of observations means nothing."},{"city_slug":"reykjavik","city_name":"Reykjavik","observed_cells":0,"public_observations":0,"public_entities":0,"latest_observed_at":null,"confidence_level":"none","confidence_note":"StreetProof has no usable coverage here yet. Absence of observations means nothing."},{"city_slug":"saskatoon","city_name":"Saskatoon","observed_cells":0,"public_observations":0,"public_entities":0,"latest_observed_at":null,"confidence_level":"none","confidence_note":"StreetProof has no usable coverage here yet. Absence of observations means nothing."}],"limitations":["Pre-launch data may include synthetic fixture records where explicitly labeled elsewhere on the site.","OCR precision and recall require a labeled holdout set; model confidence is not treated as ground truth.","Entity-match support rate is an operational proxy until blind review samples reach reportable size.","Redaction count captures published-row corrections; candidates stopped before publication are not false positives.","Resolved dispute redaction rate is not yet reportable for the current live database."]}