Clubs Compare

Borussia Dortmund vs VfB Stuttgart

Real strength. Different football profiles.

VfB Stuttgart

Bundesliga · 2026-2027

Rating as of 20 Oct 2026
Power68.3
The football profile

Club DNA

Borussia DortmundVfB Stuttgart

Strength Profile · Current

Fixed 0–100 ratings. Power is the Elo baseline; Attack and Defence use a common reference opponent. Form is opponent-adjusted.

Strength profile radarCommon axes run from zero at the centre to 100 at the edge. Exact values appear alongside. A missing metric leaves the shape incomplete. 255075100 Power Attack Defence Form Consistency Squad Availability Borussia Dortmund · Power 80.6 ptsBorussia Dortmund · Attack 69.0 ptsBorussia Dortmund · Defence 80.2 ptsBorussia Dortmund · Form 61.2 ptsBorussia Dortmund · Consistency 58.0 ptsBorussia Dortmund · Squad Availability 98.7 % VfB Stuttgart · Power 68.3 ptsVfB Stuttgart · Attack 70.2 ptsVfB Stuttgart · Defence 58.3 ptsVfB Stuttgart · Form 46.2 ptsVfB Stuttgart · Consistency 62.5 ptsVfB Stuttgart · Squad Availability 89.4 % Strength profile radarCommon axes run from zero at the centre to 100 at the edge. Exact values appear alongside. A missing metric leaves the shape incomplete. 255075100 Power Attack Defence Form Consistency SquadAvailability Borussia Dortmund · Power 80.6 ptsBorussia Dortmund · Attack 69.0 ptsBorussia Dortmund · Defence 80.2 ptsBorussia Dortmund · Form 61.2 ptsBorussia Dortmund · Consistency 58.0 ptsBorussia Dortmund · Squad Availability 98.7 % VfB Stuttgart · Power 68.3 ptsVfB Stuttgart · Attack 70.2 ptsVfB Stuttgart · Defence 58.3 ptsVfB Stuttgart · Form 46.2 ptsVfB Stuttgart · Consistency 62.5 ptsVfB Stuttgart · Squad Availability 89.4 %
Ratings · 0–100 · Availability is a percentage

Strength comparison

Point gaps · Availability in percentage points

80.6Power68.3
Borussia Dortmund +12.3 pts
69.0Attack70.2
VfB Stuttgart +1.2 pts
80.2Defence58.3
Borussia Dortmund +21.9 pts
61.2Form46.2
Borussia Dortmund +15.0 pts
58.0Consistency62.5
VfB Stuttgart +4.5 pts
98.7%Squad Availability89.4%
Borussia Dortmund +9.3 pp

Consistency measures variation in points minus LOAD90 expected points, centred on the club’s average gap. Higher means less variation, not better results. Squad Availability is the percentage of model-weighted squad available for the last completed match, using its saved pre-match snapshot. It does not predict readiness for the next match. Missing historical data stays unavailable.

What separates them

The Difference

  • Borussia Dortmund holds the defensive advantage.
  • Borussia Dortmund shows better recent form.
  • Borussia Dortmund has the higher Power rating.
  • Borussia Dortmund had more of its weighted squad available for its last completed match.
Descriptive rating gaps, not a match forecast. Small gaps are left out; missing ratings are not compared.

Borussia Dortmund · Form 5/5 · Consistency 20/20 covered matches · 3 pre-match / 17 historical forecast backfills · Availability · last completed match 17 Oct 2026

VfB Stuttgart · Form 5/5 · Consistency 20/20 covered matches · 3 pre-match / 17 historical forecast backfills · Availability · last completed match 17 Oct 2026

How Consistency works

For each match, gap = points earned − LOAD90 expected points. Consistency = 100 × (1 − SD(gaps) / 3), with SD calculated around the window’s mean gap. The endpoints come from the mathematical bounds of point gaps; this is not a fitted percentile or a forecast factor. A constant positive or negative gap can be consistent.

Current uses the latest 20 completed tracked matches within one year. At least 15 usable forecasts and 75% coverage are required. A 15–19-match score is provisional; comparative Consistency insights require 20 each. Historical backfills are reconstructed expectations, not forecasts archived before kickoff. Result randomness and changes in model calibration can affect the score.

Borussia Dortmund · Current gap SD 1.26 points · mean gap 0.12 · Full window

VfB Stuttgart · Current gap SD 1.12 points · mean gap -0.15 · Full window

Playing Style · Current

Observed profile · last 10 matches before each club’s reference fixture. Native units and coverage are shown below.

Playing style radarEach axis has its own labelled native range, shared by both clubs and both periods. Grid rings mark quarters of those ranges. Exact values appear alongside; missing data leaves the shape incomplete. Possession 0–100 % Pass accuracy 0–100 % Shots in the box 0–100 % On target share 0–100 % Shot Frequency 0–6 shots/100 passes Corner Pressure 0–12 corners/90 Borussia Dortmund · Possession 53.9 %Borussia Dortmund · Pass accuracy 85.7 %Borussia Dortmund · Shots in the box 71.8 %Borussia Dortmund · On target share 38.8 %Borussia Dortmund · Shot Frequency 2.8 shots/100 passesBorussia Dortmund · Corner Pressure 5.8 corners/90 VfB Stuttgart · Possession 54.5 %VfB Stuttgart · Pass accuracy 84.1 %VfB Stuttgart · Shots in the box 70.4 %VfB Stuttgart · On target share 36.9 %VfB Stuttgart · Shot Frequency 3.3 shots/100 passesVfB Stuttgart · Corner Pressure 6.3 corners/90 Playing style radarEach axis has its own labelled native range, shared by both clubs and both periods. Grid rings mark quarters of those ranges. Exact values appear alongside; missing data leaves the shape incomplete. Possession 0–100 % Passaccuracy 0–100 % Shots inthe box 0–100 % On targetshare 0–100 % ShotFrequency 0–6 shots/100 passes CornerPressure 0–12 corners/90 Borussia Dortmund · Possession 53.9 %Borussia Dortmund · Pass accuracy 85.7 %Borussia Dortmund · Shots in the box 71.8 %Borussia Dortmund · On target share 38.8 %Borussia Dortmund · Shot Frequency 2.8 shots/100 passesBorussia Dortmund · Corner Pressure 5.8 corners/90 VfB Stuttgart · Possession 54.5 %VfB Stuttgart · Pass accuracy 84.1 %VfB Stuttgart · Shots in the box 70.4 %VfB Stuttgart · On target share 36.9 %VfB Stuttgart · Shot Frequency 3.3 shots/100 passesVfB Stuttgart · Corner Pressure 6.3 corners/90
Native units · axis ranges shown · larger is not better

How they play

Differences in each metric’s native units

53.9%Possession54.5%
VfB Stuttgart +0.6 pp
85.7%Pass accuracy84.1%
Borussia Dortmund +1.6 pp
71.8%Shots in the box70.4%
Borussia Dortmund +1.3 pp
38.8%On target share36.9%
Borussia Dortmund +1.9 pp
2.8Shot Frequency3.3
VfB Stuttgart +0.6 shots/100 passes
5.8Corner Pressure6.3
VfB Stuttgart +0.5 corners/90

Shot Frequency = shots per 100 passes on the same covered matches: how quickly passing sequences turn into attempts. Corner Pressure = corners per completed 90-minute game. These describe attacking tendencies, not strength; extra time and custom-length games are excluded.

These are observed profiles. League and schedule differences can affect them. The radar uses native axis ranges shared by both clubs and both periods; a larger shape does not imply superiority.

Borussia Dortmund · Window 10 matches · before 24 Oct 2026 · Shot Frequency 10/10 · Corner Pressure 10/10 covered regulation matches. Per-metric coverage of the four percentage shares is unavailable.

VfB Stuttgart · Window 10 matches · before 23 Oct 2026 · Shot Frequency 10/10 · Corner Pressure 10/10 covered regulation matches. Per-metric coverage of the four percentage shares is unavailable.

Strength Profile · Season Average

Match-sampled averages of available ratings this season, across tracked competitions. These are not time-weighted averages or a measure of consistency.

Strength profile radarCommon axes run from zero at the centre to 100 at the edge. Exact values appear alongside. A missing metric leaves the shape incomplete. 255075100 Power Attack Defence Form Consistency Squad Availability Borussia Dortmund · Power 81.6 ptsBorussia Dortmund · Attack 77.1 ptsBorussia Dortmund · Defence 79.8 ptsBorussia Dortmund · Form 87.4 ptsBorussia Dortmund · Consistency 62.2 ptsBorussia Dortmund · Squad Availability 85.0 % VfB Stuttgart · Power 69.4 ptsVfB Stuttgart · Attack 70.1 ptsVfB Stuttgart · Defence 61.9 ptsVfB Stuttgart · Form 58.7 ptsVfB Stuttgart · Consistency 61.8 ptsVfB Stuttgart · Squad Availability 88.6 % Strength profile radarCommon axes run from zero at the centre to 100 at the edge. Exact values appear alongside. A missing metric leaves the shape incomplete. 255075100 Power Attack Defence Form Consistency SquadAvailability Borussia Dortmund · Power 81.6 ptsBorussia Dortmund · Attack 77.1 ptsBorussia Dortmund · Defence 79.8 ptsBorussia Dortmund · Form 87.4 ptsBorussia Dortmund · Consistency 62.2 ptsBorussia Dortmund · Squad Availability 85.0 % VfB Stuttgart · Power 69.4 ptsVfB Stuttgart · Attack 70.1 ptsVfB Stuttgart · Defence 61.9 ptsVfB Stuttgart · Form 58.7 ptsVfB Stuttgart · Consistency 61.8 ptsVfB Stuttgart · Squad Availability 88.6 %
Ratings · 0–100 · Availability is a percentage

Strength comparison

Point gaps · Availability in percentage points

81.6Power69.4
Borussia Dortmund +12.2 pts
77.1Attack70.1
Borussia Dortmund +7.0 pts
79.8Defence61.9
Borussia Dortmund +17.9 pts
87.4Form58.7
Borussia Dortmund +28.7 pts
62.2Consistency61.8
Borussia Dortmund +0.4 pts
85.0%Squad Availability88.6%
VfB Stuttgart +3.6 pp

Consistency measures variation in points minus LOAD90 expected points, centred on the club’s average gap. Higher means less variation, not better results. Squad Availability is the percentage of model-weighted squad available for the last completed match, using its saved pre-match snapshot. It does not predict readiness for the next match. Missing historical data stays unavailable.

What separates them

The Difference

  • Borussia Dortmund has the higher average Form value.
  • Borussia Dortmund has the higher average Defence value.
  • Borussia Dortmund has the higher average Power value.
  • VfB Stuttgart has the higher average Squad Availability value.
Descriptive rating gaps, not a match forecast. Small gaps are left out; missing ratings are not compared.

Borussia Dortmund · Power 8 · Attack 3 · Defence 3 · Form 5 · Consistency 8 · Squad Availability 3 · 3 pre-match / 5 historical Elo backfills. Minimum 3 observations per average. Consistency averages eligible rolling windows, which overlap; availability uses genuine pre-match snapshots only. Historical Form is reconstructed using the current calibration.

VfB Stuttgart · Power 8 · Attack 3 · Defence 3 · Form 5 · Consistency 8 · Squad Availability 3 · 3 pre-match / 5 historical Elo backfills. Minimum 3 observations per average. Consistency averages eligible rolling windows, which overlap; availability uses genuine pre-match snapshots only. Historical Form is reconstructed using the current calibration.

How Consistency works

For each match, gap = points earned − LOAD90 expected points. Consistency = 100 × (1 − SD(gaps) / 3), with SD calculated around the window’s mean gap. The endpoints come from the mathematical bounds of point gaps; this is not a fitted percentile or a forecast factor. A constant positive or negative gap can be consistent.

Current uses the latest 20 completed tracked matches within one year. At least 15 usable forecasts and 75% coverage are required. A 15–19-match score is provisional; comparative Consistency insights require 20 each. Historical backfills are reconstructed expectations, not forecasts archived before kickoff. Result randomness and changes in model calibration can affect the score.

Borussia Dortmund · Current gap SD 1.26 points · mean gap 0.12 · Full window

VfB Stuttgart · Current gap SD 1.12 points · mean gap -0.15 · Full window

Playing Style · Season Average

Observed profile · league season before each club’s reference fixture. Native units and coverage are shown below.

Playing style radarEach axis has its own labelled native range, shared by both clubs and both periods. Grid rings mark quarters of those ranges. Exact values appear alongside; missing data leaves the shape incomplete. Possession 0–100 % Pass accuracy 0–100 % Shots in the box 0–100 % On target share 0–100 % Shot Frequency 0–6 shots/100 passes Corner Pressure 0–12 corners/90 Borussia Dortmund · Possession 54.8 %Borussia Dortmund · Pass accuracy 84.9 %Borussia Dortmund · Shots in the box 72.5 %Borussia Dortmund · On target share 34.1 %Borussia Dortmund · Shot Frequency 2.9 shots/100 passesBorussia Dortmund · Corner Pressure 4.8 corners/90 VfB Stuttgart · Possession 54.5 %VfB Stuttgart · Pass accuracy 83.4 %VfB Stuttgart · Shots in the box 71.8 %VfB Stuttgart · On target share 34.3 %VfB Stuttgart · Shot Frequency 3.4 shots/100 passesVfB Stuttgart · Corner Pressure 6.7 corners/90 Playing style radarEach axis has its own labelled native range, shared by both clubs and both periods. Grid rings mark quarters of those ranges. Exact values appear alongside; missing data leaves the shape incomplete. Possession 0–100 % Passaccuracy 0–100 % Shots inthe box 0–100 % On targetshare 0–100 % ShotFrequency 0–6 shots/100 passes CornerPressure 0–12 corners/90 Borussia Dortmund · Possession 54.8 %Borussia Dortmund · Pass accuracy 84.9 %Borussia Dortmund · Shots in the box 72.5 %Borussia Dortmund · On target share 34.1 %Borussia Dortmund · Shot Frequency 2.9 shots/100 passesBorussia Dortmund · Corner Pressure 4.8 corners/90 VfB Stuttgart · Possession 54.5 %VfB Stuttgart · Pass accuracy 83.4 %VfB Stuttgart · Shots in the box 71.8 %VfB Stuttgart · On target share 34.3 %VfB Stuttgart · Shot Frequency 3.4 shots/100 passesVfB Stuttgart · Corner Pressure 6.7 corners/90
Native units · axis ranges shown · larger is not better

How they play

Differences in each metric’s native units

54.8%Possession54.5%
Borussia Dortmund +0.3 pp
84.9%Pass accuracy83.4%
Borussia Dortmund +1.5 pp
72.5%Shots in the box71.8%
Borussia Dortmund +0.8 pp
34.1%On target share34.3%
VfB Stuttgart +0.2 pp
2.9Shot Frequency3.4
VfB Stuttgart +0.5 shots/100 passes
4.8Corner Pressure6.7
VfB Stuttgart +1.8 corners/90

Shot Frequency = shots per 100 passes on the same covered matches: how quickly passing sequences turn into attempts. Corner Pressure = corners per completed 90-minute game. These describe attacking tendencies, not strength; extra time and custom-length games are excluded.

These are observed profiles. League and schedule differences can affect them. The radar uses native axis ranges shared by both clubs and both periods; a larger shape does not imply superiority.

Borussia Dortmund · Window 6 matches · before 24 Oct 2026 · Shot Frequency 6/6 · Corner Pressure 6/6 covered regulation matches. Per-metric coverage of the four percentage shares is unavailable.

VfB Stuttgart · Window 6 matches · before 23 Oct 2026 · Shot Frequency 6/6 · Corner Pressure 6/6 covered regulation matches. Per-metric coverage of the four percentage shares is unavailable.

The season so far

Historical Trend

Power · 0–100

Base Power at recorded match dates. Solid lines join saved pre-match ratings; dashed segments include historical Elo backfills. The same fixed scale is used for both clubs.

Season Power historyAvailable pre-match Power observations and historical Elo backfills. Lines connect observations, not daily measurements. Exact dates and values are available in the table below. 0255075100 Borussia Dortmund · 2026-08-29 16:30:00 UTC · 80.3 · backfill Borussia Dortmund · 2026-09-05 13:30:00 UTC · 80.6 · backfill Borussia Dortmund · 2026-09-08 19:00:00 UTC · 81.4 · backfill Borussia Dortmund · 2026-09-12 13:30:00 UTC · 81.8 · backfill Borussia Dortmund · 2026-09-19 16:30:00 UTC · 82.2 · backfill Borussia Dortmund · 2026-10-09 18:30:00 UTC · 83.1 · pre Borussia Dortmund · 2026-10-14 19:00:00 UTC · 82.3 · pre Borussia Dortmund · 2026-10-17 13:30:00 UTC · 81.1 · pre VfB Stuttgart · 2026-08-28 18:30:00 UTC · 69.9 · backfill VfB Stuttgart · 2026-09-04 18:30:00 UTC · 69.4 · backfill VfB Stuttgart · 2026-09-09 16:45:00 UTC · 70.1 · backfill VfB Stuttgart · 2026-09-12 13:30:00 UTC · 70.3 · backfill VfB Stuttgart · 2026-09-19 16:30:00 UTC · 68.9 · backfill VfB Stuttgart · 2026-10-10 13:30:00 UTC · 67.5 · pre VfB Stuttgart · 2026-10-14 19:00:00 UTC · 69.1 · pre VfB Stuttgart · 2026-10-17 13:30:00 UTC · 70.2 · pre 28 Aug 202617 Oct 2026
Borussia DortmundVfB Stuttgart
View history data and coverage
ClubDate (UTC)PowerSource
Borussia Dortmund2026-08-29 16:30:0080.3Historical Elo backfill
Borussia Dortmund2026-09-05 13:30:0080.6Historical Elo backfill
Borussia Dortmund2026-09-08 19:00:0081.4Historical Elo backfill
Borussia Dortmund2026-09-12 13:30:0081.8Historical Elo backfill
Borussia Dortmund2026-09-19 16:30:0082.2Historical Elo backfill
Borussia Dortmund2026-10-09 18:30:0083.1Saved pre-match
Borussia Dortmund2026-10-14 19:00:0082.3Saved pre-match
Borussia Dortmund2026-10-17 13:30:0081.1Saved pre-match
VfB Stuttgart2026-08-28 18:30:0069.9Historical Elo backfill
VfB Stuttgart2026-09-04 18:30:0069.4Historical Elo backfill
VfB Stuttgart2026-09-09 16:45:0070.1Historical Elo backfill
VfB Stuttgart2026-09-12 13:30:0070.3Historical Elo backfill
VfB Stuttgart2026-09-19 16:30:0068.9Historical Elo backfill
VfB Stuttgart2026-10-10 13:30:0067.5Saved pre-match
VfB Stuttgart2026-10-14 19:00:0069.1Saved pre-match
VfB Stuttgart2026-10-17 13:30:0070.2Saved pre-match
Chances, finishing & results

Efficiency

From chances to results. Exact values share a scale within each row; colours identify the clubs.

Last 10

Borussia Dortmund
VfB Stuttgart
ConversionGoals / shots · %
12.9% 10/10 covered
11.3% 10/10 covered
Save RateSaves / shots on target faced · %
76.5% 8/10 covered
64.6% 10/10 covered
Goals − xGFinishing gap · per match
+0.05 10/10 covered
-0.13 9/10 covered
xGA − GAGoals prevented · per match
+0.06 10/10 covered
+0.56 9/10 covered
Shot QualityObserved xG / shot
0.126 10/10 covered
0.114 9/10 covered
Shot VolumeShots / 90
14.7 10/10 covered
16.8 10/10 covered
xG / matchLeague season · fixed window
1.76 6/6 covered
1.91 6/6 covered
xGA / matchLeague season · fixed window
0.92 6/6 covered
2.38 6/6 covered
Points / gameLeague season · fixed window
2.33 6/6 league matches
1.00 6/6 league matches
Points vs expected · Form windowUp to 5 matches · stored pure forecasts
-1.67 5/5 Form window
-2.00 5/5 Form window

Borussia Dortmund · Statistics before 24 Oct 2026 · Recent results D · L · D · W · W

VfB Stuttgart · Statistics before 23 Oct 2026 · Recent results L · W · W · L · L

League season

Borussia Dortmund
VfB Stuttgart
ConversionGoals / shots · %
12.1% 6/6 covered
7.8% 6/6 covered
Save RateSaves / shots on target faced · %
77.8% 4/6 covered
62.5% 6/6 covered
Goals − xGFinishing gap · per match
+0.07 6/6 covered
-0.57 6/6 covered
xGA − GAGoals prevented · per match
+0.26 6/6 covered
+0.71 6/6 covered
Shot QualityObserved xG / shot
0.116 6/6 covered
0.112 6/6 covered
Shot VolumeShots / 90
15.2 6/6 covered
17.0 6/6 covered
xG / matchLeague season · fixed window
1.76 6/6 covered
1.91 6/6 covered
xGA / matchLeague season · fixed window
0.92 6/6 covered
2.38 6/6 covered
Points / gameLeague season · fixed window
2.33 6/6 league matches
1.00 6/6 league matches
Points vs expected · Form windowUp to 5 matches · stored pure forecasts
-1.67 5/5 Form window
-2.00 5/5 Form window

Borussia Dortmund · Statistics before 24 Oct 2026 · Recent results D · L · D · W · W

VfB Stuttgart · Statistics before 23 Oct 2026 · Recent results L · W · W · L · L

Positive Goals − xG means more goals scored than the observed chances predicted. Positive xGA − GA means fewer goals conceded than those chances predicted; it reflects defence and goalkeeping together. Gaps are per covered match and pair goals and xG on the same matches. Shot Quality pairs total xG and total shots. Minimum three known matches per metric; missing data stays unavailable.

Butterfly bars grow from the centre towards each club. Length shows magnitude, not superiority; negative gaps use stripes and a minus sign. Percentages use 0–100%, PPG uses 0–3; other rows share the larger absolute value as their limit. xG, xGA and PPG retain their league-season window. Points vs expected retains the latest up to five completed matches with stored pure forecasts across tracked competitions; results are newest first. These observed metrics are not adjusted for league or opponent strength.

About this comparison

Strength ratings share LOAD90’s fixed scales across leagues. Elo reflects opponent quality; Attack and Defence describe performance against the same reference club on a neutral pitch. Form adjusts for opponents and venue. League Strength is not added a second time. Cross-league ratings remain model estimates; sparse connections between leagues and incomplete data limit precision. Explore the methodology →