{"schema":"https://otranspo.ca/schemas/public-api/v1/route-evidence","schemaVersion":"1.0.0","evidenceState":"measured","generatedAt":"2026-11-03T23:32:32.690Z","route":{"id":"oc_transpo:45","publicNumber":"45","operatorId":"oc_transpo","operatorName":"OC Transpo","variantIds":["45"]},"grading":{"servicePurpose":"conventional","policy":"all_settled_arrivals","contextToVerify":[],"numericOtpPublished":true},"definitions":{"onTime":"absolute difference between the last eligible provider prediction and the scheduled arrival is no more than 300 seconds; this does not measure actual arrival","worstFiveInOneHundred":"95th-percentile difference between last eligible provider predictions and scheduled arrivals; a threshold, not a maximum or average of the latest 5%","noPublishedPosition":"a scheduled trip with no matching public vehicle position in this coverage check; this is not by itself a confirmed no-show or cancellation","riderReports":"investigation leads only; not counted as service-failure proof"},"methods":{"settledArrivals":"last-prediction-within-ten-minutes-v1","scheduledTripPositions":"retained-timetable-trip-position-v2"},"cohorts":[{"routeId":"45","computedAt":"2026-11-03T23:32:32.690Z","summary":{"routeId":"45","routeLabel":"45","operatorId":"oc_transpo","observations":23903,"weekdaysObserved":19,"serviceDaysObserved":27,"onTimePct":90.2,"averageDelaySeconds":113.9,"p95DelaySeconds":410,"computedAt":"2026-11-03T23:32:32.690Z","windowStart":"2026-10-05T00:00:00.000Z","windowEnd":"2026-11-02T23:59:59.999Z"},"hourlyReliability":[{"routeId":"45","routeLabel":"45","operatorId":"oc_transpo","hour":0,"observations":295,"serviceDays":13,"onTimePct":88.8,"medianDelaySeconds":91,"p95DelaySeconds":381},{"routeId":"45","routeLabel":"45","operatorId":"oc_transpo","hour":1,"observations":396,"serviceDays":14,"onTimePct":76,"medianDelaySeconds":161,"p95DelaySeconds":496},{"routeId":"45","routeLabel":"45","operatorId":"oc_transpo","hour":2,"observations":338,"serviceDays":13,"onTimePct":62.4,"medianDelaySeconds":215,"p95DelaySeconds":555},{"routeId":"45","routeLabel":"45","operatorId":"oc_transpo","hour":3,"observations":267,"serviceDays":15,"onTimePct":61.4,"medianDelaySeconds":209,"p95DelaySeconds":751},{"routeId":"45","routeLabel":"45","operatorId":"oc_transpo","hour":4,"observations":438,"serviceDays":15,"onTimePct":85.6,"medianDelaySeconds":41,"p95DelaySeconds":440},{"routeId":"45","routeLabel":"45","operatorId":"oc_transpo","hour":5,"observations":486,"serviceDays":15,"onTimePct":95.5,"medianDelaySeconds":41,"p95DelaySeconds":291},{"routeId":"45","routeLabel":"45","operatorId":"oc_transpo","hour":6,"observations":692,"serviceDays":15,"onTimePct":89.9,"medianDelaySeconds":110,"p95DelaySeconds":410},{"routeId":"45","routeLabel":"45","operatorId":"oc_transpo","hour":7,"observations":672,"serviceDays":14,"onTimePct":88.8,"medianDelaySeconds":81,"p95DelaySeconds":356},{"routeId":"45","routeLabel":"45","operatorId":"oc_transpo","hour":8,"observations":637,"serviceDays":14,"onTimePct":87.9,"medianDelaySeconds":101,"p95DelaySeconds":444},{"routeId":"45","routeLabel":"45","operatorId":"oc_transpo","hour":9,"observations":625,"serviceDays":14,"onTimePct":82.2,"medianDelaySeconds":113,"p95DelaySeconds":1067},{"routeId":"45","routeLabel":"45","operatorId":"oc_transpo","hour":10,"observations":596,"serviceDays":14,"onTimePct":99.5,"medianDelaySeconds":42,"p95DelaySeconds":217},{"routeId":"45","routeLabel":"45","operatorId":"oc_transpo","hour":11,"observations":626,"serviceDays":14,"onTimePct":100,"medianDelaySeconds":32,"p95DelaySeconds":168},{"routeId":"45","routeLabel":"45","operatorId":"oc_transpo","hour":12,"observations":624,"serviceDays":14,"onTimePct":100,"medianDelaySeconds":38,"p95DelaySeconds":157},{"routeId":"45","routeLabel":"45","operatorId":"oc_transpo","hour":13,"observations":614,"serviceDays":14,"onTimePct":99.7,"medianDelaySeconds":27,"p95DelaySeconds":177},{"routeId":"45","routeLabel":"45","operatorId":"oc_transpo","hour":14,"observations":621,"serviceDays":14,"onTimePct":93.4,"medianDelaySeconds":91,"p95DelaySeconds":345},{"routeId":"45","routeLabel":"45","operatorId":"oc_transpo","hour":15,"observations":624,"serviceDays":14,"onTimePct":94.6,"medianDelaySeconds":76,"p95DelaySeconds":311},{"routeId":"45","routeLabel":"45","operatorId":"oc_transpo","hour":16,"observations":621,"serviceDays":14,"onTimePct":94.5,"medianDelaySeconds":80,"p95DelaySeconds":305},{"routeId":"45","routeLabel":"45","operatorId":"oc_transpo","hour":17,"observations":618,"serviceDays":14,"onTimePct":98.9,"medianDelaySeconds":72,"p95DelaySeconds":221},{"routeId":"45","routeLabel":"45","operatorId":"oc_transpo","hour":18,"observations":585,"serviceDays":14,"onTimePct":94.5,"medianDelaySeconds":26,"p95DelaySeconds":839},{"routeId":"45","routeLabel":"45","operatorId":"oc_transpo","hour":19,"observations":587,"serviceDays":14,"onTimePct":95.9,"medianDelaySeconds":0,"p95DelaySeconds":249},{"routeId":"45","routeLabel":"45","operatorId":"oc_transpo","hour":20,"observations":478,"serviceDays":14,"onTimePct":96.2,"medianDelaySeconds":31,"p95DelaySeconds":271},{"routeId":"45","routeLabel":"45","operatorId":"oc_transpo","hour":21,"observations":354,"serviceDays":14,"onTimePct":100,"medianDelaySeconds":68,"p95DelaySeconds":161},{"routeId":"45","routeLabel":"45","operatorId":"oc_transpo","hour":22,"observations":353,"serviceDays":14,"onTimePct":93.8,"medianDelaySeconds":137,"p95DelaySeconds":331},{"routeId":"45","routeLabel":"45","operatorId":"oc_transpo","hour":23,"observations":374,"serviceDays":14,"onTimePct":90.4,"medianDelaySeconds":95,"p95DelaySeconds":453}],"scheduledTripPositionCoverage":{"routeId":"45","routeLabel":"45","operatorId":"oc_transpo","scheduledTrips":906,"observedTrips":867,"notObservedTrips":39,"coveragePct":95.7,"serviceDays":7},"scheduledTripPositionCoverageByHour":[{"hour":0,"scheduledTrips":28,"observedTrips":20,"notObservedTrips":8,"coveragePct":71.4},{"hour":1,"scheduledTrips":19,"observedTrips":17,"notObservedTrips":2,"coveragePct":89.5},{"hour":2,"scheduledTrips":14,"observedTrips":12,"notObservedTrips":2,"coveragePct":85.7},{"hour":3,"scheduledTrips":16,"observedTrips":15,"notObservedTrips":1,"coveragePct":93.8},{"hour":4,"scheduledTrips":14,"observedTrips":14,"notObservedTrips":0,"coveragePct":100},{"hour":5,"scheduledTrips":20,"observedTrips":20,"notObservedTrips":0,"coveragePct":100},{"hour":6,"scheduledTrips":49,"observedTrips":49,"notObservedTrips":0,"coveragePct":100},{"hour":7,"scheduledTrips":53,"observedTrips":53,"notObservedTrips":0,"coveragePct":100},{"hour":8,"scheduledTrips":42,"observedTrips":42,"notObservedTrips":0,"coveragePct":100},{"hour":9,"scheduledTrips":48,"observedTrips":43,"notObservedTrips":5,"coveragePct":89.6},{"hour":10,"scheduledTrips":48,"observedTrips":45,"notObservedTrips":3,"coveragePct":93.8},{"hour":11,"scheduledTrips":48,"observedTrips":48,"notObservedTrips":0,"coveragePct":100},{"hour":12,"scheduledTrips":48,"observedTrips":48,"notObservedTrips":0,"coveragePct":100},{"hour":13,"scheduledTrips":48,"observedTrips":48,"notObservedTrips":0,"coveragePct":100},{"hour":14,"scheduledTrips":48,"observedTrips":48,"notObservedTrips":0,"coveragePct":100},{"hour":15,"scheduledTrips":48,"observedTrips":48,"notObservedTrips":0,"coveragePct":100},{"hour":16,"scheduledTrips":48,"observedTrips":47,"notObservedTrips":1,"coveragePct":97.9},{"hour":17,"scheduledTrips":48,"observedTrips":48,"notObservedTrips":0,"coveragePct":100},{"hour":18,"scheduledTrips":48,"observedTrips":42,"notObservedTrips":6,"coveragePct":87.5},{"hour":19,"scheduledTrips":48,"observedTrips":44,"notObservedTrips":4,"coveragePct":91.7},{"hour":20,"scheduledTrips":38,"observedTrips":36,"notObservedTrips":2,"coveragePct":94.7},{"hour":21,"scheduledTrips":28,"observedTrips":28,"notObservedTrips":0,"coveragePct":100},{"hour":22,"scheduledTrips":28,"observedTrips":26,"notObservedTrips":2,"coveragePct":92.9},{"hour":23,"scheduledTrips":29,"observedTrips":26,"notObservedTrips":3,"coveragePct":89.7}],"headwayRegularity":{"matchedArrivals":141,"scheduledIntervals":113,"predictedIntervals":113,"scheduledWaitSeconds":459.1,"predictedWaitSeconds":458.5,"excessPredictedWaitSeconds":-0.7,"routeCount":1,"stopCount":1,"serviceDays":13,"minimumSourceMatchCoveragePct":98.6,"windowStart":"2026-10-07","windowEnd":"2026-10-30","computedAt":"2026-11-03T04:32:30.738Z","method":"settled-predicted-excess-wait-v1","routeId":"45","operatorId":"oc_transpo"}}],"recurringProblemStops":[{"stopId":"8976","stopName":"KING EDWARD / TEMPLETON","observations":172,"onTimeArrivals":83,"onTimePct":48.3,"medianDelaySeconds":303,"worstFiveInOneHundredDelaySeconds":576,"serviceDays":30,"windowStart":"2026-10-04","windowEnd":"2026-11-02","lastSettledAt":"2026-11-03T08:02:56.036Z"},{"stopId":"10735","stopName":"UOTTAWA A","observations":172,"onTimeArrivals":85,"onTimePct":49.4,"medianDelaySeconds":301,"worstFiveInOneHundredDelaySeconds":575,"serviceDays":30,"windowStart":"2026-10-04","windowEnd":"2026-11-02","lastSettledAt":"2026-11-03T08:02:56.090Z"},{"stopId":"2586","stopName":"KING EDWARD / OSGOODE","observations":172,"onTimeArrivals":98,"onTimePct":57,"medianDelaySeconds":288,"worstFiveInOneHundredDelaySeconds":557,"serviceDays":30,"windowStart":"2026-10-04","windowEnd":"2026-11-02","lastSettledAt":"2026-11-03T08:02:56.090Z"},{"stopId":"2593","stopName":"LEES / CHAPEL","observations":172,"onTimeArrivals":98,"onTimePct":57,"medianDelaySeconds":281,"worstFiveInOneHundredDelaySeconds":608,"serviceDays":30,"windowStart":"2026-10-04","windowEnd":"2026-11-02","lastSettledAt":"2026-11-03T08:02:55.893Z"},{"stopId":"2584","stopName":"LAURIER E / COPERNICUS","observations":172,"onTimeArrivals":102,"onTimePct":59.3,"medianDelaySeconds":261,"worstFiveInOneHundredDelaySeconds":543,"serviceDays":30,"windowStart":"2026-10-04","windowEnd":"2026-11-02","lastSettledAt":"2026-11-03T08:02:56.149Z"},{"stopId":"7581","stopName":"TRANSITWAY / TERMINAL","observations":171,"onTimeArrivals":106,"onTimePct":62,"medianDelaySeconds":155,"worstFiveInOneHundredDelaySeconds":616,"serviceDays":30,"windowStart":"2026-10-04","windowEnd":"2026-11-02","lastSettledAt":"2026-11-03T09:02:57.387Z"},{"stopId":"10234","stopName":"169 LEES AVE","observations":172,"onTimeArrivals":108,"onTimePct":62.8,"medianDelaySeconds":230,"worstFiveInOneHundredDelaySeconds":536,"serviceDays":30,"windowStart":"2026-10-04","windowEnd":"2026-11-02","lastSettledAt":"2026-11-03T08:02:55.819Z"},{"stopId":"10042","stopName":"LEES A","observations":172,"onTimeArrivals":112,"onTimePct":65.1,"medianDelaySeconds":237,"worstFiveInOneHundredDelaySeconds":557,"serviceDays":30,"windowStart":"2026-10-04","windowEnd":"2026-11-02","lastSettledAt":"2026-11-03T08:02:55.893Z"}],"publishedScheduleChange":{"state":"measured","operatorId":"oc_transpo","publicNumber":"45","effectiveDate":"2026-10-30","generatedAt":"2026-11-03T23:39:54.891Z","before":{"phase":"before","comparisonDate":"2026-10-26","feedVersionId":"3932bee1-4577-4968-9a97-2987e88312ad","sourceChecksum":"1d13d0abb2506002092feaff3dc08c45abd96d7b94ad4ed13c73616dab7e8ed8","sourceUrl":"https://oct-gtfs-emasagcnfmcgeham.z01.azurefd.net/public-access/GTFSExport.zip","sourceFetchedAt":"2026-10-23T01:15:52.775Z","serviceStart":"2026-10-23","serviceEnd":"2026-11-23","routeIds":["45"],"longNames":["Hospital ~ Hôpital <> Hurdman & N Rideau"],"headsigns":["Hospital ~ Hôpital","Hurdman","Rideau"],"scheduledTrips":146,"distinctStops":28,"distinctShapes":4,"firstServiceSeconds":14280,"lastServiceSeconds":98580,"shapeChecksums":["0708f8c28127d3744685b34f3181d8708f360dac655de2080e90ad2e49af3f20","0c97d3fba58744cafca6dbf72ee83c14641ba9fa75c1b74dcf7e9e4aaa493b1c","0f8b42cf8c0bb1f42e1c568f69a5bad7fba91d1b7e4308a0c8be9c81a2fc889f","13d3fc067dace74149349df6fdc5075fc36efd56c130408af87de4f49e30616d","51ec6475231a8173d4ed22c7edacdbefb6920191e4075dfdb78bc51b9cf89073","a0d693651cf0d5e0a605c34cf4eea3fdad9919d5955afd0cbdc3f968acea5dc2","a2347156eb7f88013536e1aae67f438a1ee9795deeb44dba0ed9cf249df40438","affa738b3a25b8c2a1acfc7bee77098aea01d95484545ea034f6f76f15276b5b","b2dc5ab74709c788cbdfa3f455e80771a74e60364d369a96f34477f93a24506d","b85e59bf3b0d4a5e1ba8158da68d8e18e318feb58f60ea0b0ec4412f841cf214","cd8cb5427ad63a31b63ebcb718bf6244954f8ca870db5006f82ff62bc22e49df","e24e1a44c3b2ed778d2d7758e4d7b8d248a038055545b942a4c4a8c6fcf74a49","edc39d1db8b7a5eb30c3704682a771aacc971320394e4eeef16dbce9d6dcc85c","f59bfdf13a83010a2e67f77ec12afeaeb4a7f40802552ad8862fe93e52fd2acf"],"calendarAddedServiceCount":0,"calendarRemovedServiceCount":2},"after":{"phase":"after","comparisonDate":"2026-11-02","feedVersionId":"6ee8491d-8f94-4122-a67b-ef228d9e0945","sourceChecksum":"91dd8e42516043447b7a3e7185d65557916494aaafeb36792fa1c09c514e2bbb","sourceUrl":"https://oct-gtfs-emasagcnfmcgeham.z01.azurefd.net/public-access/GTFSExport.zip","sourceFetchedAt":"2026-10-30T01:00:32.195Z","serviceStart":"2026-10-30","serviceEnd":"2026-11-30","routeIds":["45"],"longNames":["Hospital ~ Hôpital <> Hurdman & N Rideau"],"headsigns":["Hospital ~ Hôpital","Hurdman","Rideau"],"scheduledTrips":146,"distinctStops":28,"distinctShapes":4,"firstServiceSeconds":14280,"lastServiceSeconds":98580,"shapeChecksums":["0708f8c28127d3744685b34f3181d8708f360dac655de2080e90ad2e49af3f20","0c97d3fba58744cafca6dbf72ee83c14641ba9fa75c1b74dcf7e9e4aaa493b1c","0f8b42cf8c0bb1f42e1c568f69a5bad7fba91d1b7e4308a0c8be9c81a2fc889f","13d3fc067dace74149349df6fdc5075fc36efd56c130408af87de4f49e30616d","51ec6475231a8173d4ed22c7edacdbefb6920191e4075dfdb78bc51b9cf89073","a0d693651cf0d5e0a605c34cf4eea3fdad9919d5955afd0cbdc3f968acea5dc2","a2347156eb7f88013536e1aae67f438a1ee9795deeb44dba0ed9cf249df40438","affa738b3a25b8c2a1acfc7bee77098aea01d95484545ea034f6f76f15276b5b","b2dc5ab74709c788cbdfa3f455e80771a74e60364d369a96f34477f93a24506d","b85e59bf3b0d4a5e1ba8158da68d8e18e318feb58f60ea0b0ec4412f841cf214","cd8cb5427ad63a31b63ebcb718bf6244954f8ca870db5006f82ff62bc22e49df","e24e1a44c3b2ed778d2d7758e4d7b8d248a038055545b942a4c4a8c6fcf74a49","edc39d1db8b7a5eb30c3704682a771aacc971320394e4eeef16dbce9d6dcc85c","f59bfdf13a83010a2e67f77ec12afeaeb4a7f40802552ad8862fe93e52fd2acf"],"calendarAddedServiceCount":0,"calendarRemovedServiceCount":2},"reliabilityBefore":{"phase":"before","windowStart":"2026-10-16","windowEnd":"2026-10-29","observations":12442,"serviceDays":14,"withinFiveMinutesPct":91.7,"averageDelaySeconds":111,"worstFiveInOneHundredDelaySeconds":382},"reliabilityAfter":{"phase":"after","windowStart":"2026-10-30","windowEnd":"2026-11-02","observations":3391,"serviceDays":4,"withinFiveMinutesPct":91.5,"averageDelaySeconds":94,"worstFiveInOneHundredDelaySeconds":383},"reliabilityComparisonReady":false,"scheduleComparisonQualification":"calendar_exception"},"meta":{"schema":"https://otranspo.ca/schemas/response-meta/v1","schemaVersion":1,"surface":"public.reliability-evidence","requestId":null,"requestIdState":"header_only_for_cacheable_compatibility","generatedAt":"2026-11-03T23:54:11.666Z","freshnessSeconds":428019,"sourceState":"current","qualityState":"complete","evidenceIds":[],"missingSources":[],"reasonCodes":[],"sources":[{"id":"realtime:gtfs-rt","version":1,"kind":"gtfs_realtime","operatorId":null,"owner":"not-recorded","publicUrl":null,"publicUrlState":"not_recorded","licence":"not-recorded","licenceState":"not_recorded","cadence":"not-recorded","cadenceState":"not_recorded","snapshotId":"srcsnap_4eaf9670e29db46313096427c514d447c381e059efe6ce59d437af80b89b5007","checkedAt":"2026-11-03T23:54:11.666Z","observedAt":"2026-11-03T23:54:04.000Z","freshnessSeconds":7,"freshnessState":"current","qualityState":"complete","reasonCodes":[]},{"id":"gtfs-static:oc_transpo","version":1,"kind":"gtfs_static","operatorId":"oc_transpo","owner":"OC Transpo","publicUrl":"https://oct-gtfs-emasagcnfmcgeham.z01.azurefd.net/public-access/GTFSExport.zip","publicUrlState":"recorded","licence":"not-recorded","licenceState":"not_recorded","cadence":"not-recorded","cadenceState":"not_recorded","snapshotId":"srcsnap_36f5225e05530e76b58f769c4e17556d8b022b1e7451eafaf1351b5f254e4874","checkedAt":"2026-11-03T06:01:01.750Z","observedAt":"2026-10-30T01:00:32.195Z","freshnessSeconds":428019,"freshnessState":"current","qualityState":"complete","reasonCodes":[]},{"id":"gtfs-static:sto","version":4,"kind":"gtfs_static","operatorId":"sto","owner":"STO","publicUrl":"https://contenu.sto.ca/GTFS/GTFS.zip","publicUrlState":"recorded","licence":"not-recorded","licenceState":"not_recorded","cadence":"not-recorded","cadenceState":"not_recorded","snapshotId":"srcsnap_af1083bec06aef79340878f362df2de9e4bb56ff9e4dfca9a5ba0fd2fe2a55e7","checkedAt":"2026-11-03T06:01:01.750Z","observedAt":"2026-11-03T06:00:08.280Z","freshnessSeconds":64443,"freshnessState":"current","qualityState":"complete","reasonCodes":[]}]}}