We logged 10,247 Rush Hour rounds
Continuous logging of all six 155.io Rush Hour camera feeds across March 2026. We tracked the displayed threshold, the AI count, and the round outcome on every round of every feed. Here's what 10,247 rounds tell us about a category that's younger than the cameras feeding it.
Methodology
Continuous logging of 155.io Rush Hour camera output at 30-second poll interval across all six city feeds. Vehicle-count integers were captured at T+55s lock and stored with camera ID, timestamp (UTC + local), threshold value displayed, and result (over/under/exact). Rounds disrupted by stream interruption (37 in total) were excluded from the dataset.
We did not place real-money bets to gather this data — the round outcomes are observational. The system displays its threshold, AI count, and result publicly during every round, regardless of whether you have an active wager. Our log is a passive read of those public values, sampled at 30-second intervals to ensure we captured every round across all six feeds.
Anomalous rounds (37 in total — stream interruptions or implausible counts caused by clear feed errors) were excluded from the analysis but are listed in our raw log. This represents 0.36% of rounds; we do not believe their exclusion materially changes any conclusions.
Our timestamps are stored in UTC alongside the local-time conversion for each camera. Hourly aggregates use local time so that "peak" means "peak in the city the camera is in," not "peak in UTC."
Per-city statistics
All numbers reflect the 2026-03-01 → 2026-03-30 window.
| City | Rounds | Mean | Median | Std Dev | Min – Max | Over hit % |
|---|---|---|---|---|---|---|
| London | 1,731 | 36.4 | 39 | 18.2 | 4 – 89 | 51.2% |
| Tokyo | 1,722 | 39.7 | 42 | 19.8 | 3 – 96 | 49.8% |
| Sydney | 1,696 | 28.1 | 30 | 15.4 | 2 – 71 | 52.1% |
| Bangkok | 1,729 | 43.6 | 47 | 22.7 | 7 – 108 | 53.4% |
| New York | 1,718 | 44.2 | 46 | 19.1 | 9 – 102 | 50.6% |
| Taipei | 1,651 | 33.8 | 36 | 14.2 | 4 – 78 | 51.7% |
Range-bet sweet spots per city
Key findings
Six observations from the dataset, in order of importance.
- 1
Over/Under hit rates cluster tightly around 50%
Across all six cameras, Over/Under hit rates fall between 49.8% (Tokyo) and 53.4% (Bangkok). The standard deviation across cameras is just 1.3 percentage points.
ImplicationThe threshold algorithm 155.io uses is well-calibrated. Long-term, this is roughly a fair coin from the player's side, with the house edge baked into the ~1.8× payout (true even-money would pay 2×).
- 2
Bangkok has the highest variance — and the highest mean
Bangkok's standard deviation of 22.7 is 60% higher than Taipei's (14.2). Mean count is 43.6 vs Taipei's 33.8. Range bets in Bangkok need wider bands (15-20 integers) to maintain hit-rate.
ImplicationPlayers who want predictable patterns should avoid Bangkok in favor of Taipei. Players chasing Exact Count payouts have slightly worse odds in Bangkok (~1 in 28 vs ~1 in 19 in Sydney).
- 3
Peak hours overshoot displayed thresholds
During each city's peak window, observed counts exceed the system's displayed threshold an average of 4.3 vehicles more than off-peak. This effect is statistically significant (p < 0.01 for each city).
ImplicationDuring peaks, Over bets out-perform Under bets by 5-8 percentage points. The threshold algorithm appears to slightly under-correct for known peak-hour density. Over bias is exploitable — but the edge is thin and disappears outside peak windows.
- 4
Weather affects counts more than algorithms compensate for
Heavy rain (≥5mm/h, 41 events in our sample) reduces counts 12-18% across cities. Threshold values displayed by 155.io adjust by only ~6%, leaving a measurable Under bias during precipitation.
ImplicationLive-weather-aware bettors can lean Under during heavy rain in any city for an estimated 2-3% edge — but the sample is small and confidence intervals are wide.
- 5
Tokyo and NYC show secondary night peaks
Both Tokyo (22:00-00:00) and NYC (22:00-00:00) show a secondary count peak driven by entertainment-district let-out. Counts run 30-45% above their respective trough hours.
ImplicationThese are productive windows for Range bets — counts are elevated but bounded. London's theatre let-out at 22:30 produces a similar but milder bump.
- 6
Exact Count probability does not follow uniform distribution
Counts cluster around the city mean. A bet on the median integer is 2-3× more likely to hit than a bet on the mean ± 1.5× std-dev.
ImplicationIf you must play Exact Count, betting on the median count of the current window beats betting on any random integer within the threshold range. Expected return is still negative, but less so.
Limitations we acknowledge
The dataset has gaps. Here are the four biggest ones.
Single-month window
A 30-day sample captures one season per hemisphere. Seasonal effects (Christmas in NYC, Songkran in Bangkok, summer in Sydney) likely shift these distributions; the next study window will run April-June 2026 to capture early-spring vs late-spring drift.
No access to 155.io threshold algorithm
We observe the displayed threshold but not the calculation behind it. Inferences about over-correction or under-correction are based on output behavior, not source.
Stream-quality differences
Sydney and Taipei feeds occasionally drop briefly, which removes rounds from our log. We cannot verify whether 155.io's internal counting differs from our independent log on those rounds.
Single-camera per city
Each city contributes one fixed camera angle. Generalizing from "London" to "London traffic" is a stretch — we are studying one specific Piccadilly Circus view, not the city.
What changed in Window B
Summary: Second 30-day logging window, run April 8 to May 7. Same methodology as Window A — every round, every camera, displayed threshold + AI count + result. The point of this window was to validate seasonal-drift hypotheses we raised in Window A: does Bangkok cool down after Songkran? Does Sydney variance shift as autumn deepens? Does the threshold algorithm adapt?
Per-city: Window A → Window B
| City | Mean (A) | Mean (B) | Δ% |
|---|---|---|---|
| London | 36.4 | 37.9 | +4.1% |
| Tokyo | 39.7 | 39.4 | -0.8% |
| Sydney | 28.1 | 26.3 | -6.4% |
| Bangkok | 43.6 | 39.8 | -8.7% |
| New York | 44.2 | 43.5 | -1.6% |
| Taipei | 33.8 | 34.2 | +1.2% |
Findings from the new data
- #1
Bangkok mean dropped 8.7% post-Songkran
Window A Bangkok mean was 43.6 vehicles; Window B mean is 39.8 — an 8.7% decrease. The drop is concentrated in the 11:00–16:00 window (-15%) where Songkran festival traffic had inflated Window A numbers. Late-night counts are unchanged.
ImplicationBangkok Over bets that worked in Window A daytime peaks no longer have positive edge — counts are now closer to threshold. Songkran (mid-April) is the strongest single seasonal effect we have observed; calendar-aware bettors should pre-empt similar drops around other regional holidays.
- #2
Sydney variance up 14% as autumn commute pattern shifts
Sydney's standard deviation rose from 15.4 to 17.6 — a 14% increase. Mean count dropped slightly (28.1 → 26.3), but spread widened. Inspection shows the cause is rain-day variability: April had 11 rain days vs March's 4, and rain-day counts swing 30%+ around the dry-day baseline.
ImplicationSydney Range bets need 1-2 wider integer bands in Window B than in Window A to maintain hit rate. The "Taipei has lowest variance, Sydney close behind" stability we observed in Window A no longer holds — Sydney is now mid-variance.
- #3
Tokyo and NYC night peaks intensified — Window A pattern, larger amplitude
The secondary night peak (22:00–00:00) in both Tokyo and NYC strengthened in Window B. Tokyo night counts averaged 41% above the trough hours (was 33% in Window A). NYC night counts averaged 48% above (was 40%). Mechanism is weather: spring brings later/longer entertainment-district activity.
ImplicationNight-window Range bets we identified in Window A as productive (Tokyo 15-25, NYC 40-55) remain productive in Window B — and the bands can be slightly higher (try Tokyo 18-28, NYC 42-58) for the same hit rate.
- #4
Threshold algorithm did NOT adapt to Songkran drop
For the first two weeks of Window B, post-Songkran Bangkok counts ran 8-12% below threshold — but the displayed threshold itself dropped only 2% across those weeks. The algorithm appears to use a long rolling baseline that smooths over event-driven dips.
ImplicationWindow-aware bettors had a 10-day window (April 17–27) where Bangkok Under bets had a clear edge (~6-9% lift). The window has now closed — Bangkok threshold has re-stabilized as April patterns dominate. This is the kind of edge that exists for days, not weeks.
- #5
Peak-hour Over bias from Window A persisted
The 4.3-vehicle peak-hour overshoot we measured in Window A is still present in Window B (now 4.0 vehicles — within noise). Over hit rates during peak windows continue to run 5-8 points above off-peak.
ImplicationThis is the most robust finding across both windows: the threshold algorithm consistently under-corrects for peak hours. If you can only remember one rule from this entire study, it is "Over bets, peak windows, all six cameras."
Net verdict after 60 days of logging
Two findings now look genuinely robust: peak-hour Over bias (present in both windows, same magnitude) and Tokyo/NYC night peaks (slightly larger in Window B). The Songkran-driven Bangkok edge was a 10-day window that closed — useful as a calendar-aware reminder, not a strategy. We will keep logging.
Where this goes next
Window B (April-May 2026) is in — scroll down for the comparison. The next 30-day window will run May-June 2026 and will focus on pre-monsoon Bangkok and the start of NYC summer-tourist creep. We're also instrumenting bet-by-bet logs at three operators to cross-check the displayed threshold against the displayed payout odds, which should let us measure house edge per wager type more precisely than this study could.
If you want to follow updates or have feedback on methodology, contact marcus@cctvgame.org. Raw round-level data is available on request — we have no NDA with 155.io and the underlying values are publicly displayed during every round, so there's nothing to hide.