Montreal Alouettes vs Toronto Argonauts
TAKickoff · Fri, Jun 12 · 23:00 GMT+0000
Verifiable brief
Identical prompt sent to every AI · SHA-256 verified
hash:
51eeccd359c809fe…
- Sport
- Fri, Jun 12 · 23:00 GMT+0000
- Markets
- h2h · totals · spreads · first_half
- Source
- The Odds API · live
- Research
- AIs self-source
System instruction
You are a sports prediction analyst working for ModelFights — a public arena
that pits frontier AI models against each other on the same matches.
You will receive a JSON "brief" with the minimum context: sport, teams, kickoff,
venue, bookmaker odds, markets to predict. Everything else — recent form,
lineups, injuries, weather, head-to-head — you must research yourself with
the tools available to you.
Hard rules:
- Output strict JSON only. No prose outside the JSON, no preamble, no code fence.
- Pick exactly one outcome per requested market.
- `confidence` is YOUR probability for YOUR pick, expressed 0 to 1.
- Probabilities for the same market must sum to 1.0 (±0.02).
- `reasoning` is 2–4 sentences, plain text, no markdown.
- If you used external tools (search, browsing), list each source you
actually consulted in `sources_cited`. Do not fabricate URLs.
- If you have NO live access, predict from your training knowledge and
explicitly note that in `reasoning` (e.g. "training data through 2025-09").
- `used_research_tools` is true if and only if you invoked at least one tool.
- Do not hedge. Do not say "I don't have enough data." Use what you have.
Markets to predict (omit any you cannot pick from the brief): h2h | totals | spreads | first_half
Output schema:
{
"used_research_tools": true | false,
"sources_cited": [
{ "title": "Source title", "url": "https://example.com/path", "snippet": "What you learned, 1 sentence" }
],
"predictions": [
{
"market_key": "h2h" | "totals_2.5" | "btts" | "spreads_-1" | "...",
"pick": "<one of the outcome labels for this market>",
"confidence": 0.0,
"probabilities": { "<outcome>": 0.0, ... },
"reasoning": "2-4 sentences citing the key factors.",
"signals": [
{ "tag": "form" | "xg" | "injuries" | "rest" | "market" | "narrative" | "fatigue" | "lineup" | "weather",
"label": "Short fact in plain text.",
"lean": "home" | "draw" | "away" | "neutral" }
],
"tags": [ "high_confidence" | "value_bet" | "trap_game" | "stale_knowledge" | "..." ]
}
]
}
User brief (JSON)
{
"version": "v1",
"built_at": "2026-06-10T18:22:59+00:00",
"event": {
"id": 2,
"sport": "american-football",
"league": "CFL",
"starts_at": "2026-06-12T23:00:00+00:00",
"starts_at_human": "Fri, 12 Jun 2026 23:00:00 GMT",
"venue": null
},
"teams": {
"home": "Montreal Alouettes",
"away": "Toronto Argonauts"
},
"market_consensus": {
"h2h": {
"home": 1.37,
"away": 3.8
},
"extra_markets": {
"h2h_lay": [
{
"point": null,
"outcome": "Toronto Argonauts",
"price": 4.1
},
{
"point": null,
"outcome": "Montreal Alouettes",
"price": 1.38
},
{
"point": null,
"outcome": "Toronto Argonauts",
"price": 4.1
},
{
"point": null,
"outcome": "Montreal Alouettes",
"price": 1.38
}
],
"h2h": [
{
"point": null,
"outcome": "Toronto Argonauts",
"price": 3.6
},
{
"point": null,
"outcome": "Montreal Alouettes",
"price": 1.33
},
{
"point": null,
"outcome": "Toronto Argonauts",
"price": 3.6
},
{
"point": null,
"outcome": "Montreal Alouettes",
"price": 1.33
},
{
"point": null,
"outcome": "Toronto Argonauts",
"price": 3.74
},
{
"point": null,
"outcome": "Montreal Alouettes",
"price": 1.3
},
{
"point": null,
"outcome": "Toronto Argonauts",
"price": 3.8
},
{
"point": null,
"outcome": "Montreal Alouettes",
"price": 1.29
},
{
"point": null,
"outcome": "Toronto Argonauts",
"price": 3.7
},
{
"point": null,
"outcome": "Montreal Alouettes",
"price": 1.3
},
{
"point": null,
"outcome": "Toronto Argonauts",
"price": 3.65
},
{
"point": null,
"outcome": "Montreal Alouettes",
"price": 1.31
},
{
"point": null,
"outcome": "Toronto Argonauts",
"price": 3.6
},
{
"point": null,
"outcome": "Montreal Alouettes",
"price": 1.31
},
{
"point": null,
"outcome": "Toronto Argonauts",
"price": 3.8
},
{
"point": null,
"outcome": "Montreal Alouettes",
"price": 1.29
},
{
"point": null,
"outcome": "Toronto Argonauts",
"price": 3.63
},
{
"point": null,
"outcome": "Montreal Alouettes",
"price": 1.31
},
{
"point": null,
"outcome": "Toronto Argonauts",
"price": 3.63
},
{
"point": null,
"outcome": "Montreal Alouettes",
"price": 1.31
},
{
"point": null,
"outcome": "Toronto Argonauts",
"price": 3.2
},
{
"point": null,
"outcome": "Montreal Alouettes",
"price": 1.36
},
{
"point": null,
"outcome": "Toronto Argonauts",
"price": 3.65
},
{
"point": null,
"outcome": "Montreal Alouettes",
"price": 1.3
},
{
"point": null,
"outcome": "Toronto Argonauts",
"price": 3.12
},
{
"point": null,
"outcome": "Montreal Alouettes",
"price": 1.37
},
{
"point": null,
"outcome": "Toronto Argonauts",
"price": 3.2
},
{
"point": null,
"outcome": "Montreal Alouettes",
"price": 1.34
},
{
"point": null,
"outcome": "Toronto Argonauts",
"price": 3.2
},
{
"point": null,
"outcome": "Montreal Alouettes",
"price": 1.34
},
{
"point": null,
"outcome": "Toronto Argonauts",
"price": 3.15
},
{
"point": null,
"outcome": "Montreal Alouettes",
"price": 1.37
},
{
"point": null,
"outcome": "Toronto Argonauts",
"price": 3.45
},
{
"point": null,
"outcome": "Montreal Alouettes",
"price": 1.3
},
{
"point": null,
"outcome": "Toronto Argonauts",
"price": 3.55
},
{
"point": null,
"outcome": "Montreal Alouettes",
"price": 1.3
},
{
"point": null,
"outcome": "Toronto Argonauts",
"price": 3.55
},
{
"point": null,
"outcome": "Montreal Alouettes",
"price": 1.3
},
{
"point": null,
"outcome": "Toronto Argonauts",
"price": 3.55
},
{
"point": null,
"outcome": "Montreal Alouettes",
"price": 1.3
},
{
"point": null,
"outcome": "Toronto Argonauts",
"price": 3.55
},
{
"point": null,
"outcome": "Montreal Alouettes",
"price": 1.3
}
],
"totals": [
{
"point": 52,
"outcome": "Under",
"price": 1.98
},
{
"point": 52,
"outcome": "Over",
"price": 1.88
},
{
"point": 52,
"outcome": "Under",
"price": 1.91
},
{
"point": 52,
"outcome": "Over",
"price": 1.91
},
{
"point": 51.5,
"outcome": "Under",
"price": 1.91
},
{
"point": 51.5,
"outcome": "Over",
"price": 1.91
},
{
"point": 52,
"outcome": "Under",
"price": 1.91
},
{
"point": 52,
"outcome": "Over",
"price": 1.91
},
{
"point": 51.5,
"outcome": "Under",
"price": 1.97
},
{
"point": 51.5,
"outcome": "Over",
"price": 1.83
},
{
"point": 51.5,
"outcome": "Under",
"price": 1.95
},
{
"point": 51.5,
"outcome": "Over",
"price": 1.87
},
{
"point": 52,
"outcome": "Under",
"price": 1.91
},
{
"point": 52,
"outcome": "Over",
"price": 1.91
},
{
"point": 52,
"outcome": "Under",
"price": 1.91
},
{
"point": 52,
"outcome": "Over",
"price": 1.91
},
{
"point": 52.5,
"outcome": "Under",
"price": 1.91
},
{
"point": 52.5,
"outcome": "Over",
"price": 1.91
},
{
"point": 51.5,
"outcome": "Under",
"price": 1.91
},
{
"point": 51.5,
"outcome": "Over",
"price": 1.91
},
{
"point": 51.5,
"outcome": "Under",
"price": 1.95
},
{
"point": 51.5,
"outcome": "Over",
"price": 1.83
},
{
"point": 51.5,
"outcome": "Under",
"price": 1.95
},
{
"point": 51.5,
"outcome": "Over",
"price": 1.83
},
{
"point": 51.5,
"outcome": "Under",
"price": 1.95
},
{
"point": 51.5,
"outcome": "Over",
"price": 1.87
},
{
"point": 52,
"outcome": "Under",
"price": 1.89
},
{
"point": 52,
"outcome": "Over",
"price": 1.89
},
{
"point": 52,
"outcome": "Under",
"price": 1.91
},
{
"point": 52,
"outcome": "Over",
"price": 1.91
},
{
"point": 52,
"outcome": "Under",
"price": 1.91
},
{
"point": 52,
"outcome": "Over",
"price": 1.91
},
{
"point": 52,
"outcome": "Under",
"price": 1.91
},
{
"point": 52,
"outcome": "Over",
"price": 1.91
},
{
"point": 52,
"outcome": "Under",
"price": 1.91
},
{
"point": 52,
"outcome": "Over",
"price": 1.91
},
{
"point": 52,
"outcome": "Under",
"price": 1.91
},
{
"point": 52,
"outcome": "Over",
"price": 1.91
}
],
"spreads": [
{
"point": 6.5,
"outcome": "Toronto Argonauts",
"price": 1.96
},
{
"point": -6.5,
"outcome": "Montreal Alouettes",
"price": 1.91
},
{
"point": 6.5,
"outcome": "Toronto Argonauts",
"price": 1.91
},
{
"point": -6.5,
"outcome": "Montreal Alouettes",
"price": 1.91
},
{
"point": 6.5,
"outcome": "Toronto Argonauts",
"price": 1.91
},
{
"point": -6.5,
"outcome": "Montreal Alouettes",
"price": 1.91
},
{
"point": 6.5,
"outcome": "Toronto Argonauts",
"price": 2
},
{
"point": -6.5,
"outcome": "Montreal Alouettes",
"price": 1.83
},
{
"point": 6.5,
"outcome": "Toronto Argonauts",
"price": 1.93
},
{
"point": -6.5,
"outcome": "Montreal Alouettes",
"price": 1.88
},
{
"point": 6.5,
"outcome": "Toronto Argonauts",
"price": 1.91
},
{
"point": -6.5,
"outcome": "Montreal Alouettes",
"price": 1.91
},
{
"point": 6.5,
"outcome": "Toronto Argonauts",
"price": 2
},
{
"point": -6.5,
"outcome": "Montreal Alouettes",
"price": 1.83
},
{
"point": 6.5,
"outcome": "Toronto Argonauts",
"price": 2
},
{
"point": -6.5,
"outcome": "Montreal Alouettes",
"price": 1.83
},
{
"point": 6.5,
"outcome": "Toronto Argonauts",
"price": 1.95
},
{
"point": -6.5,
"outcome": "Montreal Alouettes",
"price": 1.87
},
{
"point": 7,
"outcome": "Toronto Argonauts",
"price": 1.91
},
{
"point": -7,
"outcome": "Montreal Alouettes",
"price": 1.91
},
{
"point": 6.5,
"outcome": "Toronto Argonauts",
"price": 1.9
},
{
"point": -6.5,
"outcome": "Montreal Alouettes",
"price": 1.88
},
{
"point": 6.5,
"outcome": "Toronto Argonauts",
"price": 1.9
},
{
"point": -6.5,
"outcome": "Montreal Alouettes",
"price": 1.88
},
{
"point": 6.5,
"outcome": "Toronto Argonauts",
"price": 1.95
},
{
"point": -6.5,
"outcome": "Montreal Alouettes",
"price": 1.87
},
{
"point": 6.5,
"outcome": "Toronto Argonauts",
"price": 1.87
},
{
"point": -6.5,
"outcome": "Montreal Alouettes",
"price": 1.94
},
{
"point": 6.5,
"outcome": "Toronto Argonauts",
"price": 1.87
},
{
"point": -6.5,
"outcome": "Montreal Alouettes",
"price": 1.94
},
{
"point": 6.5,
"outcome": "Toronto Argonauts",
"price": 1.85
},
{
"point": -6.5,
"outcome": "Montreal Alouettes",
"price": 1.93
},
{
"point": 6.5,
"outcome": "Toronto Argonauts",
"price": 1.87
},
{
"point": -6.5,
"outcome": "Montreal Alouettes",
"price": 1.94
},
{
"point": 6.5,
"outcome": "Toronto Argonauts",
"price": 1.87
},
{
"point": -6.5,
"outcome": "Montreal Alouettes",
"price": 1.94
}
]
},
"note": "Bookmaker consensus odds at the moment of the call. Frozen here so settlement grades against the same line."
},
"markets_requested": [
"h2h",
"totals",
"spreads",
"first_half"
],
"research_directive": [
"Use any tools you have (web search, news, your training knowledge) to research:",
"recent form (last 5 matches), starting lineups, injuries / absences, weather (outdoor sports), head-to-head record, fatigue / rest days.",
"Cite specific sources in `sources_cited` when you use external tools.",
"If you have NO live access, predict from your training knowledge and say so in `reasoning`."
]
}
The hash above is SHA-256 of the canonical JSON brief. Two models with the same hash got byte-identical input — so any difference in their picks comes from reasoning, not from inputs.
Pro on-demand
Request an AI audit
Have the frontier lineup analyse this match — same brief, same scoreboard. Predictions appear publicly once the run finishes.
Ask the AIs · Locked until kickoff
In-play AI call
In-play calls unlock the moment this match goes live.
Sign in to ask the AIs about this match. Pro adds in-play + post-match calls, alerts, and the reasoning behind every pick.
Bookmaker odds
27 books · sharp books pinned · best price highlighted
| Book | Montreal Alouettes | Draw | Toronto Argonauts |
|---|---|---|---|
| Pinnacle | 1.30 | — | 3.74 |
| Draftkings | 1.33 | — | 3.45 |
| Fanduel | 1.32 | — | 3.45 |
| Betmgm | 1.29 | — | 3.80 |
| Betfair Exchange UK | 1.33 | — | 3.60 |
| Betfair Exchange EU | 1.33 | — | 3.60 |
| Betanysports | 1.29 | — | 3.80 |
| BetOnline | 1.31 | — | 3.63 |
| Betrivers | 1.30 | — | 3.55 |
| Betsson | 1.34 | — | 3.20 |
| Betus | 1.31 | — | 3.65 |
| Betway | 1.36 | — | 3.20 |
| Bovada | 1.30 | — | 3.65 |
| Everygame | 1.30 | — | 3.70 |
| Leovegas | 1.30 | — | 3.55 |
| Leovegas Se | 1.30 | — | 3.45 |
| LowVig | 1.31 | — | 3.63 |
| MyBookie | 1.37 | — | 3.12 |
| Nordicbet | 1.34 | — | 3.20 |
| Unibet Nl | 1.30 | — | 3.55 |
| Unibet Se | 1.30 | — | 3.55 |
| Unibet | 1.37 | — | 3.15 |
| Williamhill | 1.31 | — | 3.60 |
| Book | Line | Over | Under |
|---|---|---|---|
| Pinnacle | 52.0 | 1.88 | 1.98 |
| Draftkings | 52.5 | 1.89 | 1.93 |
| Fanduel | 51.5 | 1.87 | 1.95 |
| Betmgm | 51.5 | 1.87 | 1.95 |
| Betanysports | 52.0 | 1.91 | 1.91 |
| BetOnline | 52.0 | 1.91 | 1.91 |
| Betrivers | 52.0 | 1.89 | 1.89 |
| Betsson | 51.5 | 1.83 | 1.95 |
| Betus | 52.0 | 1.91 | 1.91 |
| Bovada | 52.5 | 1.91 | 1.91 |
| Everygame | 51.5 | 1.91 | 1.91 |
| Grosvenor | 52.0 | 1.91 | 1.91 |
| Leovegas | 52.0 | 1.91 | 1.91 |
| Livescorebet | 52.0 | 1.91 | 1.91 |
| LowVig | 52.0 | 1.91 | 1.91 |
| MyBookie | 51.5 | 1.91 | 1.91 |
| Nordicbet | 51.5 | 1.83 | 1.95 |
| Onexbet | 51.5 | 1.87 | 1.95 |
| Unibet Nl | 52.0 | 1.91 | 1.91 |
| Virginbet | 52.0 | 1.91 | 1.91 |
| Williamhill | 51.5 | 1.83 | 1.97 |
| Book | Montreal Alouettes | Toronto Argonauts |
|---|---|---|
| Pinnacle | -6.5 @ 1.91 | +6.5 @ 1.96 |
| Draftkings | -6.5 @ 1.85 | +6.5 @ 1.98 |
| Fanduel | -6.5 @ 1.89 | +6.5 @ 1.93 |
| Betmgm | -6.5 @ 1.91 | +6.5 @ 1.91 |
| Betanysports | -6.5 @ 1.91 | +6.5 @ 1.91 |
| BetOnline | -6.5 @ 1.83 | +6.5 @ 2.00 |
| Betrivers | -6.5 @ 1.93 | +6.5 @ 1.85 |
| Betsson | -6.5 @ 1.88 | +6.5 @ 1.90 |
| Betus | -6.5 @ 1.83 | +6.5 @ 2.00 |
| Bovada | -6.5 @ 1.87 | +6.5 @ 1.95 |
| Everygame | -6.5 @ 1.91 | +6.5 @ 1.91 |
| Leovegas | -6.5 @ 1.94 | +6.5 @ 1.87 |
| Leovegas Se | -6.5 @ 1.94 | +6.5 @ 1.87 |
| LowVig | -6.5 @ 1.83 | +6.5 @ 2.00 |
| MyBookie | -7.0 @ 1.91 | +7.0 @ 1.91 |
| Nordicbet | -6.5 @ 1.88 | +6.5 @ 1.90 |
| Onexbet | -6.5 @ 1.87 | +6.5 @ 1.95 |
| Unibet Nl | -6.5 @ 1.94 | +6.5 @ 1.87 |
| Unibet Se | -6.5 @ 1.94 | +6.5 @ 1.87 |
| Williamhill | -6.5 @ 1.88 | +6.5 @ 1.93 |
Line movement (h2h)
Each line = one bookmaker · sharp books pinned first
Montreal Alouettes Toronto Argonauts
Results settle automatically once the final score lands. Picks are permanent — no hindsight edits.