← All posts

How to read Polyloly in 2 minutes

2026-04-29 · 7 min read

Polyloly packs a lot into one page. If you've never traded prediction markets, half the labels look like a Bloomberg Terminal got into a bar fight with a sports book. Here's the 2-minute version: what to look at first, what each card means in plain English, and what to ignore until later.

TL;DR — only look at one thing first

When you land on /analyze?e=<event>, the answer to "what should I do?" is in the top-left card titled "🎯 What to do".

Inside it: a "📌 Bottom line · plain English" box. One sentence, ranked tier (Value bet / Slight value / No clear edge / Slight overpriced / Avoid), and the recommended outcome with the size of the gap between our model and the market.

Example reading:

Our model thinks More than 2.5 goals total has a 58% chance of happening, but the market only prices it at 44%. That's a 14 percentage-point gap in your favour — the strongest value pick on this match.

That's it. Read that sentence and you know the headline. Everything below is supporting evidence.

The five most important terms

You'll see these everywhere on Polyloly. Memorize them and 80% of the page becomes readable.

1. Edge (and pp)

The gap between what our model thinks vs what the market is currently pricing.

  • pp = percentage points (the absolute difference)
  • Positive edge = market is under-pricing the outcome → potential buy
  • Negative edge = market is over-pricing → potential fade

Example: model 58%, market 44% → edge = +14pp (buy). Same idea as a sportsbook "beating the close."

2. Model

Our form-based statistical estimate. Inputs: last 5 seasons of domestic-league results, home/away splits, head-to-head, finishing differential, xG, ELO ratings. Outputs a probability for each market (1X2, Over/Under, BTTS, spreads).

It's not magic — just historical patterns weighted into a single number. Probabilistic, not deterministic.

3. Market

What probability the Polymarket price is currently implying. A YES priced at 0.44 = market thinks 44% chance.

4. xG (expected goals)

The average number of goals a team should have scored based on the quality of chances they created — not the actual goals they finished. Standard metric in football analytics.

If a team has scored +5.9 goals more than their xG over recent matches, they've been clinical or lucky. That finishing edge usually regresses over the next 5-10 games. So "xG regression risk · STRONG" on Polyloly = don't price this team based on recent goals alone.

5. Whale flow

Recent dollar volume from large traders (≥$1k positions) on each side of a market. We track the top-5 whale buyers per side over the last 24 hours.

If their money concentrates heavily on one outcome but the price doesn't reflect it, that's a "whale gap" signal — smart money disagreeing with the public price.

The page, top to bottom

Here's the standard layout on /analyze:

Header strip

Title, search bar, top wallets backing each side. Move on.

Main grid

🎯 What to do (left) — the one card you actually need. Plain-English bottom line + ranked all-bets list with TIER badges.

💡 Value Signals (right) — supplementary flags: whale flow gaps, xG regression risks, weather impact, cross-market arbitrage. Use these to corroborate or fade the headline.

Live in-play stack (only renders during/before live sports)

A vertical stack of in-play cards. Pre-match, most show placeholders. Once kickoff hits, they fill in:

Card What it tells you
🟢 Live in-play picks Recomputed model picks every minute (xG-Poisson + Dixon-Coles + state adjusters + red-card detection)
🚪 Exit signals Cash-out / stop-loss recommendations on positions you've LOG'd
🔥 Live odds drift Markets moving ≥3pp in last 15-60 min — STEAMING UP / COLLAPSING tags
🎯 Player props live "Saka scored at 23'? YES still at 85% = +14pp arb" — closing-line stale prices
⚠️ Key players off Lineup vs expected XI — Saka benched = -10pp Arsenal-to-win swing
⚽ Live event timeline Goals, cards, substitutions, VAR (api-sports.io feed)
📊 Live xG/SoT/possession Live match stats refining in-play probabilities every 30s

Below the grid

⚡ TL;DR Verdict — risk callouts. Things that could blow up the read (small sample, odd schedule, weather).

⚽ Team Form — full breakdown per team: home/away splits, last 5 results, BTTS%, Over 2.5%, xG.

Hard Facts table — Vegas-style stats grid. Useful for double-checking.

Markets table — every Polymarket sub-market with price + our model's take + edge. Drill-down for the picks already shown above.

Whale-list — the badges you'll see

Each whale on the buyer list is tagged with up to 4 badges. From most to least important:

🟢 PRE-MATCH / 🟡 IN-PLAY / 🔴 POST-GAME

When the wallet placed the trade relative to kickoff. Pre-match = real conviction. In-play = reactive. Post-game = closing/arbing won bets, near-zero info value.

💎 SHARP / 🟢 BEATS MARKET / ⚪ FAIR / 🟠 CHASING / 🔴 NO EDGE

CLV (closing line value) badge. Compares each of the wallet's resolved trades vs where the market eventually settled.

  • SHARP +5pp = enters at prices 5pp better than where market closes. Real skill, hard to fake on big sample (≥30 resolved trades).
  • CHASING -3pp = pays UP vs where market lands. Reactive, late, no edge.

CLV converges 5-10× faster than win-rate. So a wallet with 65% WR on 20 markets could be lucky — but a wallet with +5pp CLV on 100 markets is a real sharp.

🌅 AWAKENED / 🧬 CLUSTERED / 🔥 STATEMENT

Behavioural flags. Awakened = wallet was dormant 14+ days. Clustered = part of a coordinated group (Louvain detection). Statement = position size is 1.5× their typical baseline.

Common gotchas

"What to do" says ⏳ Loading then disappears

The model needs the form data fetch to return. Takes 1-3s on first load. If it stays "Loading…" longer than 10s, something failed — open DevTools console and check.

"Awaiting form model"

Some events (obscure leagues, friendlies, brand-new fixtures) don't have enough historical data. Defer to Value Signals on the right + markets table below.

Drift card shows ⚪ flat everywhere

Pre-match, snapshots from earlier won't have moved. Card will populate once match goes live and prices start drifting.

Player-props card is empty

30 markets are tracked but card only shows actionable arbs (player scored + YES under 95%, or finished + YES over 5%). Pre-match: empty. Mid-match: fills in within 3-7 min of each goal.

Key-players-off says "Lineup not yet published"

api-sports publishes ~30-60 min before kickoff. Refresh the page closer to start.

When to ignore Polyloly

There are events where our model is systematically weaker than the market:

  • Cup finals (samples too small, motivation skews everything)
  • Friendlies (lineups unknown, motivation flat, results meaningless)
  • Brand-new leagues / season starts (no form data yet)
  • Player props in obscure markets (api-sports doesn't always cover lower-tier leagues)
  • Anything with ≤3 home or ≤3 away matches in our DB

In all these cases, the "⏳ Awaiting form model" placeholder appears or sample-size warnings flash. Read those, don't override the model's silence with your own confidence.

What we're NOT doing

To be clear about the line:

  • Not gambling advice. We describe what the data shows. You decide.
  • Not guarantees. Prediction markets carry capital risk. The model has been wrong before and will be wrong again.
  • Not a broker. We don't take stakes, place trades, or charge for the data. Free, no signup.
  • Not affiliated with Polymarket. Independent analytics on top of their public on-chain data.

The one habit that makes Polyloly worth bookmarking

Open /analyze?e=<event> 2-3 hours before kickoff. Bookmark the URL. Refresh once at T-30 minutes (lineup release) and once at kickoff.

That's the workflow we built the page around:

  • T-3h to T-1h: Read "What to do" + Value Signals + Form table → form your thesis pre-match
  • T-30m: Refresh — Key players off populates, drift card may show pre-match late money
  • Kickoff: Live in-play picks recompute every minute, drift watcher fires on every move
  • Each goal: Player-props live flags 3-7 min stale-price windows
  • Mid-game / late game: Exit-signals tells you when to cash out / stop-loss

That's the 2-minute version. Drop us a hi@polyloly.com if anything's still confusing — we'll add it to the FAQ.


About the author

Poly Loly — Prediction Markets Expert

Lead analyst behind Polyloly, a real-time analytics platform tracking whale positions across $1B+ in monthly Polymarket volume. Focus areas: on-chain data aggregation, insider-detection heuristics (80%+ win-rate flags on resolved markets), and market microstructure across political, sports, crypto, and esports prediction markets. Published daily trading-terminal intel, trader leaderboards, and automated alerts via @PolylolyHi.

🌐 polyloly.com · 𝕏 @PolylolyHi · ✉ hi@polyloly.com


This article is for informational purposes only and does not constitute investment advice. Prediction markets carry a risk of capital loss.

This article contains affiliate links. If you sign up through our links, Polyloly.com may earn a commission, which helps us produce free analytics. It does not influence our analysis.