Fastest Century in ODI Cricket: AB de Villiers' 31-Ball Record
On this page8
- 01The Fastest ODI Century Ever: AB de Villiers, 31 Balls (2015)
- 02Top 10 Fastest ODI Centuries by Balls Faced
- 03How This List Is Ranked
- 04Corey Anderson’s Short-Lived Record
- 05Shahid Afridi’s 18-Year Record
- 06The Modern Challengers: Maxwell and Asif Khan
- 07What Makes an Ultra-Fast Century Possible?
- 08Fastest ODI Century: Current Status in 2026
Thirty-one balls. That is how long it took AB de Villiers to go from zero to a century against the West Indies at the Wanderers in Johannesburg on 18 January 2015, and more than a decade later no one else in men’s ODI history has done it in fewer than 36. This guide ranks the ten fastest centuries ever recorded in one-day internationals, with every ball count checked against ESPNcricinfo’s official records and Wisden’s 2025 leaderboard, plus the context behind each one.
The Fastest ODI Century Ever: AB de Villiers, 31 Balls (2015)
De Villiers came to the crease in the third ODI of the series with South Africa already well placed, and simply attacked every ball he faced. His fifty arrived off 16 balls — itself a world record at the time — and his century followed just 15 deliveries later. He finished unbeaten on 149 off 44 balls, with 16 sixes and 9 fours, in an innings that lasted barely seven overs of batting time.
The Wanderers has a fast outfield and thin air that helps the ball carry, but the bowling attack he faced was still full international strength. What separated the innings from every fast century before or since was consistency: de Villiers found the middle of the bat from almost every angle, over after over, rather than surviving a string of near-misses.
Top 10 Fastest ODI Centuries by Balls Faced
| Rank | Player | Team | Balls | Opponent | Venue | Year |
|---|---|---|---|---|---|---|
| 1 | AB de Villiers | South Africa | 31 | West Indies | Johannesburg | 2015 |
| 2 | Corey Anderson | New Zealand | 36 | West Indies | Queenstown | 2014 |
| 3 | Shahid Afridi | Pakistan | 37 | Sri Lanka | Nairobi | 1996 |
| 4 | Glenn Maxwell | Australia | 40 | Netherlands | Delhi | 2023 |
| 5 | Asif Khan | UAE | 41 | Nepal | Kirtipur | 2023 |
| 6 | Mark Boucher | South Africa | 44 | Zimbabwe | Potchefstroom | 2006 |
| 7= | Brian Lara | West Indies | 45 | Bangladesh | Dhaka | 1999 |
| 7= | Shahid Afridi | Pakistan | 45 | India | Kanpur | 2005 |
| 9= | Jesse Ryder | New Zealand | 46 | West Indies | Queenstown | 2014 |
| 9= | Jos Buttler | England | 46 | Pakistan | Dubai | 2015 |
Ranked by balls faced to reach 100, men’s full-member and Associate-nation ODIs. Ties are marked ”=”. Two centuries — Cameron Green’s 47-ball hundred for Australia (v South Africa, Mackay, 2025) and Jos Buttler’s earlier 47-ball century (v Netherlands, Amstelveen, 2022) — sit just outside this top 10, tied for 11th.
How This List Is Ranked
This list counts only recognised men’s one-day internationals, ranked by balls faced to reach three figures — the ball on which the century was completed, not the batter’s final strike rate. Domestic List A records, such as Jake Fraser-McGurk’s 29-ball century in Australia’s Marsh One-Day Cup, are excluded because they aren’t full internationals, even though headlines sometimes conflate the two. Women’s ODI cricket runs its own separate leaderboard and isn’t merged into this men’s list. Ties share a rank, marked ”=”, and are ordered by date.
Corey Anderson’s Short-Lived Record
De Villiers was not hunting an open record. New Zealand’s Corey Anderson had set the 36-ball mark against the same West Indies attack a year earlier, on New Year’s Day 2014 in Queenstown, finishing unbeaten on 131 off 47 balls with 14 sixes. His reign lasted barely 13 months, one of the shortest for any major ODI batting record, before de Villiers broke it by five balls.
Shahid Afridi’s 18-Year Record
Afridi’s story runs the opposite way. His 37-ball century against Sri Lanka at Nairobi Gymkhana on 4 October 1996 — struck at age 16 with 11 sixes — stood as the world record for almost 18 years, longer than any other entry on this list has lasted. He also produced a second sub-50-ball century nine years later, a 45-ball hundred against India in Kanpur, meaning he appears twice in the top 10.
The Modern Challengers: Maxwell and Asif Khan
The two fastest centuries since de Villiers both came in 2023. Glenn Maxwell’s 40-ball hundred for Australia against the Netherlands in Delhi is the fastest century in World Cup history and the fourth-fastest ODI century overall, scored en route to an unbeaten 201 while battling cramp. Weeks earlier, UAE’s Asif Khan reached his century in 41 balls against Nepal in Kirtipur, the fastest ODI hundred ever by an Associate-nation player, finishing on 101 not out.
What Makes an Ultra-Fast Century Possible?
A handful of things tend to line up when a record like this falls:
- Batting position and freedom: Most record holders bat at four, five or six, arriving once the mandatory fielding restrictions have eased but with wickets still in hand, which frees them to swing from ball one.
- Match situation: A team already in control, or already needing a rapid chase, removes the pressure to accumulate.
- Ground dimensions and outfield: Smaller grounds and fast outfields, like Queenstown’s Village Green or Delhi’s Arun Jaitley Stadium, turn more mishits into sixes.
- Conditions and bowling depth: Flat, dry pitches against tiring or part-time bowling attacks let the bat find the middle consistently, as it did against Zimbabwe’s and Netherlands’ attacks on this list.
- Six-hitting over running: Every innings on this list is built on sixes rather than quick singles — de Villiers’ 16 sixes moved his score far faster than running ever could.
Fastest ODI Century: Current Status in 2026
AB de Villiers’ 31-ball record has now stood for more than 11 years, longer than Corey Anderson’s mark lasted but still well short of Shahid Afridi’s 18-year reign. No batter has faced fewer than 36 balls to reach an ODI century since de Villiers’ innings, and the two fastest challenges since then — Maxwell’s 40 balls and Asif Khan’s 41 — both remain at least nine balls behind. T20 cricket has pushed international strike rates well past 150 as a baseline, and that mentality keeps producing fast ODI hundreds from batters like Maxwell, Buttler and Cameron Green, whose 47-ball century against South Africa in 2025 shows the record is still being chased. For highest individual ODI scores, a different kind of record entirely, see the companion guide; for the broadest six-hitting tallies, see most sixes in international cricket and the fastest century in cricket across all formats.
Frequently asked questions
Who holds the record for the fastest century in ODI cricket?+
AB de Villiers of South Africa, with a century off 31 balls against the West Indies at the Wanderers in Johannesburg on 18 January 2015. It remains the fastest hundred in men's one-day international history as of 2026, more than a decade after he set it.
How many balls did AB de Villiers take to reach his century?+
31 balls. De Villiers went from his fifty (reached in 16 balls) to his century in another 15 deliveries, finishing the innings on 149 not out off 44 balls with 16 sixes and 9 fours against the West Indies.
Who had the fastest ODI century before AB de Villiers?+
Corey Anderson of New Zealand, who scored a century off 36 balls against the West Indies in Queenstown on 1 January 2014. He held the record for just over a year before de Villiers broke it in January 2015.
What is the fastest ODI century at a men's Cricket World Cup?+
Glenn Maxwell's 40-ball century for Australia against the Netherlands in Delhi during the 2023 World Cup, part of a match-winning unbeaten 201. It is the fourth-fastest ODI century of all time and the fastest ever at a World Cup.
Who has the fastest ODI century by a player from an Associate nation?+
Asif Khan of the UAE, who reached his century in 41 balls against Nepal in Kirtipur in March 2023, finishing unbeaten on 101 off 42 balls. It sits fifth on the all-time list, ahead of long-standing records held by Mark Boucher and Brian Lara.
How many sixes did AB de Villiers hit in his record-breaking innings?+
16 sixes, along with 9 fours, in his unbeaten 149 off 44 balls. That six count alone would be a respectable ODI innings for most batters; de Villiers hit them inside a knock that lasted barely seven overs of batting.
What counts as a genuinely fast century in ODI cricket?+
A typical ODI century takes 80 to 130 balls. Anything under 80 balls is considered a fast hundred, under 60 balls is exceptional, and the sub-50-ball centuries on this list — a group of roughly a dozen innings across nearly 50 years of ODI cricket — are historic outliers.
Has anyone come close to breaking AB de Villiers' 31-ball record since 2015?+
Not in full international ODIs. Glenn Maxwell (40 balls, 2023) and Asif Khan (41 balls, 2023) are the closest challengers this decade, but both remain nine and ten balls slower than de Villiers. No batter has faced fewer than 36 balls to reach an ODI century since his innings.
Sources
Play & tools
Free browser games and tools — no account, no download.
- Play today's Sports Connections — Today's Sports Connections — daily hints, answers, and play the grid.
- Play Guess the NFL Player — A new mystery NFL player every day. Eight guesses, with a clue on each — plus free unlimited mode.
- Explore all our games →
Related cricket guides
View all →
Fastest Century in Cricket (Every Format)
AB de Villiers holds the fastest ODI century at 31 balls. The fastest hundreds in T20, ODI and Test cricket explained, with the record-holders for each format.
Highest Batting Average in ODI Cricket: Shubman Gill Leads at 60.33
Shubman Gill's 60.33 is the highest qualified ODI batting average in 2026, just ahead of Virat Kohli's 58.59 across five times the innings. Full ranked top 20.
Most ODI Wickets in Cricket: All-Time Records and Top Bowlers
Muttiah Muralitharan holds the record for most ODI wickets ever. See the all-time leaders, what makes an elite ODI bowler, and key ODI bowling milestones.
Fastest 50s in Cricket: World Cups, ODIs, Tests & T20Is
AB de Villiers's 16-ball ODI fifty, Yuvraj Singh's 12-ball T20I fifty, and Misbah-ul-Haq's 21-ball Test fifty lead the way. Full leaderboards for every format, with sources.
Most ODI Runs Without a Century: Full Leaderboard (2026)
Misbah-ul-Haq scored 5,122 ODI runs and never hit a hundred. See the full ranked leaderboard of batters with the most ODI runs without a century, verified against ESPNcricinfo.
Most Centuries in International Cricket
Sachin Tendulkar has the most international centuries with 100, across Tests and ODIs. The all-time century-makers ranked, with Virat Kohli closing in.