Complete current-form data across the top 5 European leagues — last 5 results, win/loss streaks, xG trends and statistical ratings. Updated daily. Use form data alongside our Poisson predictions for the sharpest betting decisions.
Form ratings are calculated from each team's last 5 league results. Excellent ≥ 67 pts%, Good ≥ 45%, Mixed ≥ 25%, Poor < 25%. Form is shown oldest → newest (left → right). Data refreshes daily by 08:00 UTC. Methodology →
| Team | League | Form (Last 5) | Streak | xG | xGA | Pts | Rating | Form % |
|---|---|---|---|---|---|---|---|---|
|
ARS
Arsenal
#1 — 38 played
|
EPL |
WWWWW
|
W5 | 0.88 | 1.90 | 85 | Excellent |
|
|
AS
AS Roma
#3 — 38 played
|
SEA |
WWWWW
|
W5 | 1.47 | 1.13 | 73 | Excellent |
|
|
MNU
Manchester United
#3 — 38 played
|
EPL |
WWDWW
|
W2 | 2.43 | 0.79 | 71 | Excellent |
|
|
COM
Como
#4 — 38 played
|
SEA |
WWWDW
|
W1 | 2.38 | 1.98 | 71 | Excellent |
|
|
BAY
Bayern München
#1 — 34 played
|
BUN |
WWDWW
|
W2 | 2.20 | 2.19 | 89 | Excellent |
|
|
RMA
Real Madrid
#2 — 38 played
|
LAL |
WWWLW
|
W1 | 1.85 | 1.02 | 86 | Excellent |
|
|
RAY
Rayo Vallecano
#8 — 38 played
|
LAL |
WWDDW
|
W1 | 2.60 | 0.64 | 50 | Excellent |
|
|
TOT
Tottenham
#17 — 38 played
|
EPL |
WLDWW
|
W2 | 2.07 | 1.40 | 41 | Excellent |
|
|
REA
Real Betis
#5 — 38 played
|
LAL |
WLWDW
|
W1 | 1.49 | 1.61 | 60 | Excellent |
|
|
CEL
Celta Vigo
#6 — 38 played
|
LAL |
WDLWW
|
W2 | 1.65 | 0.84 | 54 | Excellent |
|
|
VAL
Valencia
#9 — 38 played
|
LAL |
WWDWL
|
L1 | 1.27 | 0.90 | 49 | Excellent |
|
|
NAP
Napoli
#2 — 38 played
|
SEA |
WWLDW
|
W1 | 1.43 | 1.17 | 76 | Excellent |
|
|
CAG
Cagliari
#14 — 38 played
|
SEA |
WWLDW
|
W1 | 1.06 | 1.52 | 43 | Excellent |
|
|
LEC
Lecce
#17 — 38 played
|
SEA |
WWLWD
|
D1 | 1.95 | 2.07 | 38 | Excellent |
|
|
189
1899 Hoffenheim
#5 — 34 played
|
BUN |
LWDWW
|
W2 | 1.08 | 0.85 | 61 | Excellent |
|
|
FC
FC Augsburg
#9 — 34 played
|
BUN |
LWWDW
|
W1 | 1.20 | 2.03 | 43 | Excellent |
|
|
PAR
Paris Saint Germain
#1 — 34 played
|
L1 |
LWWDW
|
W1 | 2.29 | 1.52 | 76 | Excellent |
|
|
STR
Strasbourg
#8 — 34 played
|
L1 |
WWDLW
|
W1 | 2.27 | 1.72 | 53 | Excellent |
|
|
AUX
Auxerre
#15 — 34 played
|
L1 |
WWWLD
|
D1 | 1.27 | 0.84 | 34 | Excellent |
|
|
BOU
Bournemouth
#6 — 38 played
|
EPL |
DDWWD
|
D1 | 1.79 | 0.98 | 57 | Good |
|
|
BAR
Barcelona
#1 — 38 played
|
LAL |
LWLWW
|
W2 | 1.52 | 0.86 | 94 | Good |
|
|
ATM
Atletico Madrid
#4 — 38 played
|
LAL |
LWWLW
|
W1 | 2.45 | 1.34 | 69 | Good |
|
|
SEV
Sevilla
#13 — 38 played
|
LAL |
LLWWW
|
W3 | 1.19 | 0.95 | 43 | Good |
|
|
LEV
Levante
#16 — 38 played
|
LAL |
LWWWL
|
L1 | 1.97 | 2.17 | 42 | Good |
|
|
INT
Inter
#1 — 38 played
|
SEA |
DDWWD
|
D1 | 1.35 | 1.72 | 87 | Good |
|
|
BOR
Borussia Dortmund
#2 — 34 played
|
BUN |
WWLWL
|
L1 | 0.88 | 1.78 | 73 | Good |
|
|
RBL
RB Leipzig
#3 — 34 played
|
BUN |
LWLWW
|
W2 | 2.31 | 0.66 | 65 | Good |
|
|
LYO
Lyon
#4 — 34 played
|
L1 |
LLWWW
|
W3 | 1.86 | 1.10 | 60 | Good |
|
|
REN
Rennes
#6 — 34 played
|
L1 |
LWLWW
|
W2 | 1.50 | 1.10 | 59 | Good |
|
|
PAR
Paris FC
#11 — 34 played
|
L1 |
WLWLW
|
W1 | 2.07 | 0.96 | 44 | Good |
|
|
MCI
Manchester City
#2 — 38 played
|
EPL |
LDWWD
|
D1 | 2.14 | 1.34 | 78 | Good |
|
|
SUN
Sunderland
#7 — 38 played
|
EPL |
WWDDL
|
L1 | 2.18 | 1.64 | 54 | Good |
|
|
LEE
Leeds
#14 — 38 played
|
EPL |
LWDWD
|
D1 | 0.85 | 1.47 | 47 | Good |
|
|
NOT
Nottingham Forest
#16 — 38 played
|
EPL |
DLDWW
|
W2 | 2.46 | 2.17 | 44 | Good |
|
|
BOL
Bologna
#8 — 38 played
|
SEA |
DWWDL
|
L1 | 2.22 | 0.88 | 56 | Good |
|
|
BOR
Borussia Mönchengladbach
#12 — 34 played
|
BUN |
WLWDD
|
D2 | 0.81 | 1.71 | 38 | Good |
|
|
LEN
Lens
#2 — 34 played
|
L1 |
WLWDD
|
D2 | 2.18 | 0.95 | 70 | Good |
|
|
LIL
Lille
#3 — 34 played
|
L1 |
LWDWD
|
D1 | 1.13 | 0.88 | 61 | Good |
|
|
AVL
Aston Villa
#4 — 38 played
|
EPL |
WWDLL
|
L2 | 1.10 | 1.40 | 65 | Good |
|
|
FUL
Fulham
#11 — 38 played
|
EPL |
WDLLW
|
W1 | 2.02 | 1.26 | 52 | Good |
|
|
NEW
Newcastle
#12 — 38 played
|
EPL |
LWDWL
|
L1 | 2.19 | 0.73 | 49 | Good |
|
|
VIL
Villarreal
#3 — 38 played
|
LAL |
WLLDW
|
W1 | 1.10 | 1.11 | 72 | Good |
|
|
GET
Getafe
#7 — 38 played
|
LAL |
WLWDL
|
L1 | 2.24 | 2.16 | 51 | Good |
|
|
ESP
Espanyol
#11 — 38 played
|
LAL |
DWWLL
|
L2 | 1.77 | 0.84 | 46 | Good |
|
|
ALA
Alaves
#14 — 38 played
|
LAL |
LWWDL
|
L1 | 1.84 | 1.13 | 43 | Good |
|
|
MAL
Mallorca
#18 — 38 played
|
LAL |
WLLDW
|
W1 | 2.27 | 1.89 | 42 | Good |
|
|
LAZ
Lazio
#9 — 38 played
|
SEA |
WLLWD
|
D1 | 1.41 | 1.85 | 54 | Good |
|
|
UDI
Udinese
#10 — 38 played
|
SEA |
LLWWD
|
D1 | 1.19 | 2.02 | 50 | Good |
|
|
LEV
Bayer Leverkusen
#6 — 34 played
|
BUN |
DLWWL
|
L1 | 2.11 | 1.08 | 59 | Good |
|
|
SC
SC Freiburg
#7 — 34 played
|
BUN |
WLDLW
|
W1 | 1.27 | 1.36 | 47 | Good |
|
|
FSV
FSV Mainz 05
#10 — 34 played
|
BUN |
WLWLD
|
D1 | 2.36 | 1.14 | 40 | Good |
|
|
UNI
Union Berlin
#11 — 34 played
|
BUN |
WWDLL
|
L2 | 1.02 | 1.88 | 39 | Good |
|
|
HAM
Hamburger SV
#13 — 34 played
|
BUN |
DWWLL
|
L2 | 0.83 | 2.15 | 38 | Good |
|
|
1.
1. FC Heidenheim
#17 — 34 played
|
BUN |
LWDWL
|
L1 | 2.36 | 1.23 | 26 | Good |
|
|
MAR
Marseille
#5 — 34 played
|
L1 |
WWLDL
|
L1 | 1.27 | 1.76 | 59 | Good |
|
|
LOR
Lorient
#9 — 34 played
|
L1 |
LWDLW
|
W1 | 1.26 | 1.17 | 45 | Good |
|
|
TOU
Toulouse
#10 — 33 played
|
L1 |
WWDLL
|
L2 | 1.00 | 1.81 | 44 | Good |
|
|
BRI
Brighton
#8 — 38 played
|
EPL |
LLWLW
|
W1 | 2.26 | 1.81 | 53 | Mixed |
|
|
WES
West Ham
#18 — 38 played
|
EPL |
WLLLW
|
W1 | 1.22 | 1.08 | 39 | Mixed |
|
|
JUV
Juventus
#6 — 38 played
|
SEA |
DLWDD
|
D2 | 2.09 | 1.02 | 69 | Mixed |
|
|
PAR
Parma
#13 — 38 played
|
SEA |
WLLLW
|
W1 | 1.72 | 0.64 | 45 | Mixed |
|
|
FIO
Fiorentina
#15 — 38 played
|
SEA |
DWDLD
|
D1 | 1.07 | 1.52 | 42 | Mixed |
|
|
CRE
Cremonese
#18 — 38 played
|
SEA |
LWWLL
|
L2 | 2.13 | 1.40 | 34 | Mixed |
|
|
STU
VfB Stuttgart
#4 — 34 played
|
BUN |
DWDDL
|
L1 | 1.70 | 2.08 | 62 | Mixed |
|
|
LE
Le Havre
#14 — 34 played
|
L1 |
WLDDD
|
D3 | 1.64 | 0.93 | 35 | Mixed |
|
|
NIC
Nice
#16 — 34 played
|
L1 |
WDDLD
|
D1 | 1.67 | 1.96 | 32 | Mixed |
|
|
LIV
Liverpool
#5 — 38 played
|
EPL |
DLDLW
|
W1 | 2.10 | 1.14 | 60 | Mixed |
|
|
BRE
Brentford
#9 — 38 played
|
EPL |
DDLWL
|
L1 | 2.10 | 0.62 | 53 | Mixed |
|
|
ELC
Elche
#15 — 38 played
|
LAL |
DWLDL
|
L1 | 1.41 | 1.64 | 43 | Mixed |
|
|
ATA
Atalanta
#7 — 38 played
|
SEA |
DLWDL
|
L1 | 2.10 | 1.64 | 59 | Mixed |
|
|
TOR
Torino
#12 — 38 played
|
SEA |
DLWLD
|
D1 | 1.61 | 1.01 | 45 | Mixed |
|
|
VFL
VfL Wolfsburg
#16 — 34 played
|
BUN |
LDWLD
|
D1 | 1.76 | 1.62 | 29 | Mixed |
|
|
MON
Monaco
#7 — 34 played
|
L1 |
LLWDD
|
D2 | 1.41 | 1.76 | 54 | Mixed |
|
|
CHE
Chelsea
#10 — 38 played
|
EPL |
LWDLL
|
L2 | 0.84 | 0.86 | 52 | Mixed |
|
|
ATH
Athletic Club
#12 — 38 played
|
LAL |
LDLLW
|
W1 | 1.12 | 1.72 | 45 | Mixed |
|
|
MIL
AC Milan
#5 — 38 played
|
SEA |
LWLLD
|
D1 | 1.28 | 1.43 | 70 | Mixed |
|
|
SAS
Sassuolo
#11 — 38 played
|
SEA |
LLLWD
|
D1 | 2.59 | 1.43 | 49 | Mixed |
|
|
WER
Werder Bremen
#15 — 34 played
|
BUN |
LLLDW
|
W1 | 1.10 | 1.26 | 32 | Mixed |
|
|
NAN
Nantes
#17 — 33 played
|
L1 |
LWLLD
|
D1 | 1.12 | 1.04 | 23 | Mixed |
|
|
WOL
Wolves
#20 — 38 played
|
EPL |
DDLDL
|
L1 | 0.84 | 0.73 | 20 | Poor |
|
|
REA
Real Sociedad
#10 — 38 played
|
LAL |
DLDDL
|
L1 | 2.22 | 0.75 | 46 | Poor |
|
|
GIR
Girona
#19 — 38 played
|
LAL |
DLDDL
|
L1 | 1.20 | 0.78 | 41 | Poor |
|
|
HEL
Hellas Verona
#19 — 38 played
|
SEA |
LDLDD
|
D2 | 2.28 | 1.53 | 21 | Poor |
|
|
ANG
Angers
#13 — 34 played
|
L1 |
DDLLD
|
D1 | 0.93 | 2.08 | 36 | Poor |
|
|
EVE
Everton
#13 — 38 played
|
EPL |
LLDDL
|
L1 | 2.35 | 0.67 | 49 | Poor |
|
|
CRY
Crystal Palace
#15 — 38 played
|
EPL |
LDLDL
|
L1 | 0.92 | 1.08 | 45 | Poor |
|
|
BUR
Burnley
#19 — 38 played
|
EPL |
DLDLL
|
L2 | 1.71 | 1.70 | 22 | Poor |
|
|
GEN
Genoa
#16 — 38 played
|
SEA |
LLDDL
|
L1 | 1.77 | 1.44 | 41 | Poor |
|
|
EIN
Eintracht Frankfurt
#8 — 34 played
|
BUN |
DLLDL
|
L1 | 1.57 | 1.97 | 44 | Poor |
|
|
1.
1. FC Köln
#14 — 34 played
|
BUN |
LLDLD
|
D1 | 1.69 | 1.02 | 32 | Poor |
|
|
STA
Stade Brestois 29
#12 — 34 played
|
L1 |
DLLLD
|
D1 | 2.57 | 1.26 | 39 | Poor |
|
|
MET
Metz
#18 — 34 played
|
L1 |
DLLDL
|
L1 | 2.41 | 2.19 | 17 | Poor |
|
|
OVI
Oviedo
#20 — 38 played
|
LAL |
LLLDL
|
L1 | 1.78 | 2.00 | 29 | Poor |
|
|
FC
FC St. Pauli
#18 — 34 played
|
BUN |
LLLLD
|
D1 | 2.11 | 1.95 | 26 | Poor |
|
|
OSA
Osasuna
#17 — 38 played
|
LAL |
LLLLL
|
L5 | 1.27 | 2.13 | 42 | Poor |
|
|
PIS
Pisa
#20 — 38 played
|
SEA |
LLLLL
|
L5 | 2.60 | 0.98 | 18 | Poor |
|
A football form guide is one of the most fundamental tools in the serious bettor's toolkit. Before placing any bet, understanding whether a team is in rising or falling momentum gives you a crucial edge that basic league table positions simply cannot provide. At xGaura, our form guide aggregates results data from all five major European leagues into a single, filterable view — updated daily.
Football form refers to a team's results over their most recent matches, typically the last five. A team showing W W W D W is in excellent momentum — consistent winning, high confidence, likely settled in their tactical shape. A team showing L L D L L is struggling: defensive disorganisation, low confidence, or a fixture pile-up taking its toll. This context is invisible in a league table position alone. A top-four team in poor form is a completely different betting proposition than a top-four team on a five-game win streak.
xGaura's form ratings translate the raw W/D/L string into a percentage (Win = 3 pts, Draw = 1 pt, out of 15 possible), then classify teams as Excellent, Good, Mixed or Poor. This makes it trivially easy to scan and filter across 100+ teams without manual calculation.
Both metrics tell different stories. Form shows what has happened. xG (expected goals) shows whether results were deserved. The strongest signals come when the two agree — a team in excellent form and with strong xG numbers has both the results and the statistical foundation to back up their momentum. When they diverge, the xG perspective often wins: a team with poor recent results but high xG is likely to bounce back. This is the basis of our Value Bet Index.
Win streaks carry betting significance beyond just form percentage. A team on a W4 or W5 streak is not just statistically strong — they are also likely to be benefiting from settled team selection, tactical clarity, and the psychological edge of continuous winning. Markets often underestimate long streaks because bookmaker models smooth over recent performance. This is where our odds movement tracker is useful: watching markets tighten on in-form teams reflects sharp money recognising what the form guide is showing.
The most common application of the form guide is in selecting legs for accumulator bets. Selecting teams in excellent form on favourable home fixtures is a disciplined, statistically-backed approach to accumulator building — far superior to picking on brand reputation or recent big-game results. Our daily acca builder incorporates form data alongside Poisson probabilities and xG for each selected leg.
Form should be checked as close to the match as possible. A mid-week cup match, an injury to a key player, or a Tuesday night European fixture affecting legs can shift a team's Friday or Saturday form profile significantly. xGaura refreshes form data daily by 08:00 UTC, incorporating all results from the previous evening's fixtures. For last-minute checking, combine this with our odds movement monitor — sudden odds shifts often reveal information not yet priced into the wider market.