Big Win Streaks
The longest winning streaks within a single season (11+ wins in a row)
11+ Game Winning Streaks
Each square is one win — date, opponent and score · longest streak at top
Manchester City2017-18 · 18 wins
2017-08-26BOU2-1
2017-09-09LIV5-0
2017-09-16WAT6-0
2017-09-23CRY5-0
2017-09-30CHE1-0
2017-10-14STO7-2
2017-10-21BUR3-0
2017-10-28WBA3-2
2017-11-05ARS3-1
2017-11-18LEI2-0
2017-11-26HUD2-1
2017-11-29SOU2-1
2017-12-03WHU2-1
2017-12-10MUN2-1
2017-12-13SWA4-0
2017-12-16TOT4-1
2017-12-23BOU4-0
2017-12-27NEW1-0
Liverpool2019-20 · 18 wins
2019-10-27TOT2-1
2019-11-02AVL2-1
2019-11-10MCI3-1
2019-11-23CRY2-1
2019-11-30BHA2-1
2019-12-04EVE5-2
2019-12-07BOU3-0
2019-12-14WAT2-0
2019-12-26LEI4-0
2019-12-29WOL1-0
2020-01-02SHU2-0
2020-01-11TOT1-0
2020-01-19MUN2-0
2020-01-23WOL2-1
2020-01-29WHU2-0
2020-02-01SOU4-0
2020-02-15NOR1-0
2020-02-24WHU3-2
Manchester City2020-21 · 15 wins
2020-12-19SOU1-0
2020-12-26NEW2-0
2021-01-03CHE3-1
2021-01-13BHA1-0
2021-01-17CRY4-0
2021-01-20AVL2-0
2021-01-26WBA5-0
2021-01-30SHU1-0
2021-02-03BUR2-0
2021-02-07LIV4-1
2021-02-13TOT3-0
2021-02-17EVE3-1
2021-02-21ARS1-0
2021-02-27WHU2-1
2021-03-02WOL4-1
Manchester City2018-19 · 14 wins
2019-02-03ARS3-1
2019-02-06EVE2-0
2019-02-10CHE6-0
2019-02-27WHU1-0
2019-03-02BOU1-0
2019-03-09WAT3-1
2019-03-30FUL2-0
2019-04-03CAR2-0
2019-04-14CRY3-1
2019-04-20TOT1-0
2019-04-24MUN2-0
2019-04-28BUR1-0
2019-05-06LEI1-0
2019-05-12BHA4-1
Arsenal2001-02 · 13 wins
2002-02-10EVE1-0
2002-02-23FUL4-1
2002-03-02NEW2-0
2002-03-05DER1-0
2002-03-17AVL2-1
2002-03-30SUN3-0
2002-04-01CHA3-0
2002-04-06TOT2-1
2002-04-21IPS2-0
2002-04-24WHU2-0
2002-04-29BOL2-0
2002-05-08MUN1-0
2002-05-11EVE4-3
Chelsea2016-17 · 13 wins
2016-10-01HUL2-0
2016-10-15LEI3-0
2016-10-23MUN4-0
2016-10-30SOU2-0
2016-11-05EVE5-0
2016-11-20MID1-0
2016-11-26TOT2-1
2016-12-03MCI3-1
2016-12-11WBA1-0
2016-12-14SUN1-0
2016-12-17CRY1-0
2016-12-26BOU3-0
2016-12-31STO4-2
Manchester City2021-22 · 12 wins
2021-11-06MUN2-0
2021-11-21EVE3-0
2021-11-28WHU2-1
2021-12-01AVL2-1
2021-12-04WAT3-1
2021-12-11WOL1-0
2021-12-14LEE7-0
2021-12-19NEW4-0
2021-12-26LEI6-3
2021-12-29BRE1-0
2022-01-01ARS2-1
2022-01-15CHE1-0
Manchester City2022-23 · 12 wins
2023-02-25BOU4-1
2023-03-04NEW2-0
2023-03-11CRY1-0
2023-04-01LIV4-1
2023-04-08SOU4-1
2023-04-15LEI3-1
2023-04-26ARS4-1
2023-04-30FUL2-1
2023-05-03WHU3-0
2023-05-06LEE2-1
2023-05-14EVE3-0
2023-05-21CHE1-0
Manchester United1999-00 · 11 wins
2000-03-11DER3-1
2000-03-18LEI2-0
2000-03-25BRA4-0
2000-04-01WHU7-1
2000-04-10MID4-3
2000-04-15SUN4-0
2000-04-22SOU3-1
2000-04-24CHE3-2
2000-04-29WAT3-2
2000-05-06TOT3-1
2000-05-14AVL1-0
Manchester United2008-09 · 11 wins
2008-12-26STO1-0
2008-12-29MID1-0
2009-01-11CHE3-0
2009-01-14WIG1-0
2009-01-17BOL1-0
2009-01-27WBA5-0
2009-01-31EVE1-0
2009-02-08WHU1-0
2009-02-18FUL3-0
2009-02-21BLA2-1
2009-03-04NEW2-1
Liverpool2013-14 · 11 wins
2014-02-08ARS5-1
2014-02-12FUL3-2
2014-02-23SWA4-3
2014-03-01SOU3-0
2014-03-16MUN3-0
2014-03-22CAR6-3
2014-03-26SUN2-1
2014-03-30TOT4-0
2014-04-06WHU2-1
2014-04-13MCI3-2
2014-04-20NOR3-2
Streaks
| # | Team | Season | Started | Ended | Wins | Opponents |
|---|---|---|---|---|---|---|
| 1 | Manchester City | 2017-18 | 2017-08-26 | 2017-12-27 | 18 | BOU, LIV, WAT, CRY, CHE, STO, BUR, WBA, ARS, LEI, HUD, SOU, WHU, MUN, SWA, TOT, BOU, NEW |
| 2 | Liverpool | 2019-20 | 2019-10-27 | 2020-02-24 | 18 | TOT, AVL, MCI, CRY, BHA, EVE, BOU, WAT, LEI, WOL, SHU, TOT, MUN, WOL, WHU, SOU, NOR, WHU |
| 3 | Manchester City | 2020-21 | 2020-12-19 | 2021-03-02 | 15 | SOU, NEW, CHE, BHA, CRY, AVL, WBA, SHU, BUR, LIV, TOT, EVE, ARS, WHU, WOL |
| 4 | Manchester City | 2018-19 | 2019-02-03 | 2019-05-12 | 14 | ARS, EVE, CHE, WHU, BOU, WAT, FUL, CAR, CRY, TOT, MUN, BUR, LEI, BHA |
| 5 | Arsenal | 2001-02 | 2002-02-10 | 2002-05-11 | 13 | EVE, FUL, NEW, DER, AVL, SUN, CHA, TOT, IPS, WHU, BOL, MUN, EVE |
| 6 | Chelsea | 2016-17 | 2016-10-01 | 2016-12-31 | 13 | HUL, LEI, MUN, SOU, EVE, MID, TOT, MCI, WBA, SUN, CRY, BOU, STO |
| 7 | Manchester City | 2021-22 | 2021-11-06 | 2022-01-15 | 12 | MUN, EVE, WHU, AVL, WAT, WOL, LEE, NEW, LEI, BRE, ARS, CHE |
| 8 | Manchester City | 2022-23 | 2023-02-25 | 2023-05-21 | 12 | BOU, NEW, CRY, LIV, SOU, LEI, ARS, FUL, WHU, LEE, EVE, CHE |
| 9 | Manchester United | 1999-00 | 2000-03-11 | 2000-05-14 | 11 | DER, LEI, BRA, WHU, MID, SUN, SOU, CHE, WAT, TOT, AVL |
| 10 | Manchester United | 2008-09 | 2008-12-26 | 2009-03-04 | 11 | STO, MID, CHE, WIG, BOL, WBA, EVE, WHU, FUL, BLA, NEW |
| 11 | Liverpool | 2013-14 | 2014-02-08 | 2014-04-20 | 11 | ARS, FUL, SWA, SOU, MUN, CAR, SUN, TOT, WHU, MCI, NOR |
SQL Query Used
-- Longest winning streaks within a single season (11+ wins), one row per win game
copy (
with team_games as (
select
match_id,
season_label,
kickoff_at,
home_team_abbr as team_abbr,
home_team_name as team_name,
away_team_abbr as opponent_abbr,
away_team_name as opponent_name,
home_score as goals_for,
away_score as goals_against,
result = 'home_win' as is_win
from "premier_league"."main"."fct_matches"
union all
select
match_id,
season_label,
kickoff_at,
away_team_abbr as team_abbr,
away_team_name as team_name,
home_team_abbr as opponent_abbr,
home_team_name as opponent_name,
away_score as goals_for,
home_score as goals_against,
result = 'away_win' as is_win
from "premier_league"."main"."fct_matches"
),
games_ranked as (
select
*,
row_number() over (
partition by team_abbr, season_label
order by kickoff_at, match_id
) as rn_in_season
from team_games
),
wins as (
select
*,
rn_in_season - row_number() over (
partition by team_abbr
order by season_label, kickoff_at, match_id
) as grp
from games_ranked
where is_win
),
streaks as (
select
team_abbr,
min(team_name) as team_name,
season_label,
grp,
count(*) as streak_length,
min(kickoff_at) as started_at
from wins
group by team_abbr, season_label, grp
having count(*) > 10
),
ranked_streaks as (
select
*,
row_number() over (
order by streak_length desc, started_at, team_name
) as streak_id
from streaks
)
select
rs.streak_id,
rs.team_name,
rs.season_label,
rs.streak_length,
date(w.kickoff_at) as match_date,
w.opponent_abbr,
w.opponent_name,
cast(w.goals_for as varchar) || '-' || cast(w.goals_against as varchar) as score
from ranked_streaks rs
join wins w
on w.team_abbr = rs.team_abbr
and w.season_label = rs.season_label
and w.grp = rs.grp
order by rs.streak_id, w.kickoff_at, w.match_id
)
to 'assets/data/big_win_streaks.csv' (header, delimiter ',')