Houston Astros 1, Seattle Mariners 2

baseball game fileFinal
T-Mobile Park · Seattle

Game flow

Every swing in the score.

The line is the running run differential: above the center favors Houston Astros, below favors Seattle Mariners. It runs across every plate appearance and is marked by inning along the bottom. Select a scoring marker to jump to the play.

Score differential over the gameA positive differential means Houston Astros led; a negative differential means Seattle Mariners led.Run differential+10−112345678910
  1. 01top 1: Jose Altuve pops out to first baseman Ty France in foul territory.00
  2. 02top 1: Kyle Tucker strikes out swinging.00
  3. 03top 1: Yordan Alvarez called out on strikes.00
  4. 04bottom 1: J.P. Crawford flies out to center fielder Jake Meyers.00
  5. 05bottom 1: Dylan Moore strikes out swinging.00
  6. 06bottom 1: Julio Rodríguez flies out to right fielder Kyle Tucker.00
  7. 07top 2: Jeremy Peña grounds out, shortstop J. P. Crawford to first baseman Ty France.00
  8. 08top 2: Alex Bregman grounds out, second baseman Dylan Moore to first baseman Ty France.00
  9. 09top 2: Jake Meyers flies out to right fielder Dominic Canzone.00
  10. 10bottom 2: Ty France singles on a fly ball to right fielder Kyle Tucker, deflected by second baseman Jose Altuve.00
  11. 11bottom 2: Josh Rojas lines out to right fielder Kyle Tucker.00
  12. 12bottom 2: Mitch Haniger singles on a line drive to center fielder Jake Meyers. Ty France to 2nd.00
  13. 13bottom 2: Dominic Canzone strikes out swinging.00
  14. 14bottom 2: Mitch Garver strikes out swinging.00
  15. 15top 3: Jon Singleton grounds out, second baseman Dylan Moore to first baseman Ty France.00
  16. 16top 3: Chas McCormick grounds out, third baseman Josh Rojas to first baseman Ty France.00
  17. 17top 3: Yainer Diaz singles on a line drive to right fielder Dominic Canzone.00
  18. 18top 3: Jose Altuve grounds into a force out, third baseman Josh Rojas to second baseman Dylan Moore. Yainer Diaz out at 2nd.00
  19. 19bottom 3: Luke Raley called out on strikes.00
  20. 20bottom 3: J.P. Crawford pops out to third baseman Alex Bregman.00
  21. 21bottom 3: Dylan Moore pops out to second baseman Jose Altuve.00
  22. 22top 4: Kyle Tucker called out on strikes.00
  23. 23top 4: Yordan Alvarez singles on a line drive to left fielder Luke Raley.00
  24. 24top 4: Jeremy Peña strikes out swinging.00
  25. 25top 4: Alex Bregman singles on a sharp line drive to center fielder Julio Rodríguez. Yordan Alvarez to 3rd.00
  26. 26top 4: Jake Meyers singles on a fly ball to center fielder Julio Rodríguez. Yordan Alvarez scores. Alex Bregman to 3rd.10
  27. 27top 4: Jon Singleton strikes out swinging.10
  28. 28bottom 4: Julio Rodríguez strikes out swinging.10
  29. 29bottom 4: Ty France flies out to left fielder Chas McCormick.10
  30. 30bottom 4: Josh Rojas grounds out softly, pitcher Justin Verlander to first baseman Jon Singleton.10
  31. 31top 5: Chas McCormick flies out to center fielder Julio Rodríguez.10
  32. 32top 5: Yainer Diaz strikes out swinging.10
  33. 33top 5: Jose Altuve pops out to second baseman Dylan Moore.10
  34. 34bottom 5: Mitch Haniger strikes out swinging.10
  35. 35bottom 5: Dominic Canzone homers (5) on a line drive to right center field.11
  36. 36bottom 5: Mitch Garver called out on strikes.11
  37. 37bottom 5: Luke Raley flies out sharply to center fielder Jake Meyers.11
  38. 38top 6: Kyle Tucker called out on strikes.11
  39. 39top 6: Yordan Alvarez singles on a line drive to center fielder Julio Rodríguez.11
  40. 40top 6: Jeremy Peña singles on a ground ball to third baseman Josh Rojas. Yordan Alvarez to 3rd.11
  41. 41top 6: Alex Bregman strikes out swinging.11
  42. 42top 6: Jake Meyers grounds out, second baseman Dylan Moore to first baseman Ty France.11
  43. 43bottom 6: J.P. Crawford strikes out swinging.11
  44. 44bottom 6: Dylan Moore strikes out swinging.11
  45. 45bottom 6: Julio Rodríguez flies out to right fielder Kyle Tucker.11
  46. 46top 7: Jon Singleton strikes out swinging.11
  47. 47top 7: Chas McCormick strikes out swinging.11
  48. 48top 7: Yainer Diaz strikes out swinging.11
  49. 49bottom 7: Ty France flies out to right fielder Kyle Tucker.11
  50. 50bottom 7: Josh Rojas flies out to left fielder Chas McCormick.11
  51. 51bottom 7: Mitch Haniger walks.11
  52. 52bottom 7: Dominic Canzone flies out to left fielder Chas McCormick.11
  53. 53top 8: Jose Altuve singles on a line drive to center fielder Julio Rodríguez.11
  54. 54top 8: Kyle Tucker lines out to right fielder Dominic Canzone.11
  55. 55top 8: Yordan Alvarez strikes out swinging.11
  56. 56top 8: Jeremy Peña strikes out swinging.11
  57. 57bottom 8: Cal Raleigh strikes out on a foul tip.11
  58. 58bottom 8: Luke Raley strikes out swinging.11
  59. 59bottom 8: J.P. Crawford strikes out swinging.11
  60. 60top 9: Alex Bregman pops out to shortstop J. P. Crawford.11
  61. 61top 9: Jake Meyers called out on strikes.11
  62. 62top 9: Jon Singleton grounds out, third baseman Josh Rojas to first baseman Ty France.11
  63. 63bottom 9: Dylan Moore strikes out swinging.11
  64. 64bottom 9: Julio Rodríguez singles on a line drive to left fielder Chas McCormick.11
  65. 65bottom 9: Ty France walks.11
  66. 66bottom 9: Ryan Bliss strikes out swinging.11
  67. 67bottom 9: Mitch Haniger strikes out swinging.11
  68. 68top 10: Chas McCormick flies out to right fielder Dominic Canzone.11
  69. 69top 10: Victor Caratini flies out to left fielder Luke Raley.11
  70. 70top 10: Jose Altuve grounds out, shortstop J. P. Crawford to first baseman Ty France.11
  71. 71bottom 10: Dominic Canzone grounds out, second baseman Jose Altuve to first baseman Mauricio Dubón. Jonatan Clase to 3rd.11
  72. 72bottom 10: Cal Raleigh walks.11
  73. 73bottom 10: Luke Raley walks. Cal Raleigh to 2nd.11
  74. 74bottom 10: J.P. Crawford out on a sacrifice fly to right fielder Kyle Tucker. Jonatan Clase scores.12
Boxscore

Key evidence.

Every reported player line, kept in the API’s sport-specific stat vocabulary.

Houston Astros boxscore
PlayerPosabavgb2b3bbbfcsererahhbphriplobpopsoutspapitchesrrbisbsfslgsosvtotal baseswwhip
Jeremy PenaSS40.25000001000.2500.500400000.25021
Yordan AlvarezDH40.50000002000.5001410100.50022
Yainer DiazC30.33300001000.3330.667300000.33321
Jake MeyersCF40.25000001000.2500.500401100.25011
Bryan AbreuP0300001031403000
Josh HaderP1500101032403002
Alex Bregman3B40.25000001000.2500.500400000.25011
Mauricio Dubon1B000000000000000
Kyle TuckerRF4000000000040000030
Jose Altuve2B50.20000001000.2000.400500000.20001
Victor CaratiniC1000000000010000000
Tayler ScottP2400000.667121410003
Chas McCormickLF4000000000040000010
Justin VerlanderP12511.2863170219819000.571
Jon Singleton1B4000000000040000020
Seattle Mariners boxscore
PlayerPosabavgb2b3bbbfcsererahhbphriplobpopsoutspapitchesrrbisbsfslgsosvtotal baseswwhip
J.P. CrawfordSS4000000000050101020
Cal RaleighC1000100000.5000.50020000010
Mitch GarverC2000000000020000020
Dominic CanzoneRF40.25000001010.2501.25041100114
Gabe SpeierP0300100.66702801001.500
Josh Rojas3B3000000000030000000
Ty France1B30.33300101000.5000.833400000.33301
Trent ThorntonP0300001031903000
George KirbyP02411.5006060189418001
Andres MunozP0300001031201000
Luke RaleyLF3000100000.2500.25040000020
Austin VothP0100000.33301301000
Jonatan ClasePR000000000100000
Dylan Moore3B4000000000040000030
Ryan Bliss2B1000000000010000010
Mitch HanigerDH30.33300101000.5000.833400000.33321
Mike BaumannP030000103500010
Julio RodriguezCF40.25000001000.2500.500400100.25011

Comparison

Side by side.

Final

Matchup

Before first pitch.

Probable pitchers and posted lineup context from the matchup card.

Lineups available2024-05-30T01:40:00Z · Final

Houston Astros

Probable pitcher: Justin Verlander (R)

Seattle Mariners

Probable pitcher: George Kirby (R)

Play-by-play

The game, at bat by at bat.

top 1st(3)
  • Jose Altuve vs George Kirby0-0

    Jose Altuve pops out to first baseman Ty France in foul territory.

    1-1, 3 pitches · 0 outs before

  • Kyle Tucker vs George Kirby0-0

    Kyle Tucker strikes out swinging.

    1-3, 4 pitches · 1 out before

  • Yordan Alvarez vs George Kirby0-0

    Yordan Alvarez called out on strikes.

    2-3, 5 pitches · 2 outs before

bottom 1st(3)
  • J.P. Crawford vs Justin Verlander0-0

    J.P. Crawford flies out to center fielder Jake Meyers.

    0-1, 2 pitches · 0 outs before

  • Dylan Moore vs Justin Verlander0-0

    Dylan Moore strikes out swinging.

    3-3, 8 pitches · 1 out before

  • Julio Rodriguez vs Justin Verlander0-0

    Julio Rodríguez flies out to right fielder Kyle Tucker.

    1-1, 3 pitches · 2 outs before

top 2nd(3)
  • Jeremy Pena vs George Kirby0-0

    Jeremy Peña grounds out, shortstop J. P. Crawford to first baseman Ty France.

    0-0, 1 pitch · 0 outs before

  • Alex Bregman vs George Kirby0-0

    Alex Bregman grounds out, second baseman Dylan Moore to first baseman Ty France.

    2-2, 7 pitches · 1 out before

  • Jake Meyers vs George Kirby0-0

    Jake Meyers flies out to right fielder Dominic Canzone.

    0-0, 1 pitch · 2 outs before

bottom 2nd(5)
  • Ty France vs Justin Verlander0-0

    Ty France singles on a fly ball to right fielder Kyle Tucker, deflected by second baseman Jose Altuve.

    1-1, 3 pitches · 0 outs before

  • Josh Rojas vs Justin Verlander0-0

    Josh Rojas lines out to right fielder Kyle Tucker.

    1-0, 2 pitches · 0 outs before

  • Mitch Haniger vs Justin Verlander0-0

    Mitch Haniger singles on a line drive to center fielder Jake Meyers. Ty France to 2nd.

    2-2, 5 pitches · 1 out before

  • Dominic Canzone vs Justin Verlander0-0

    Dominic Canzone strikes out swinging.

    1-3, 4 pitches · 1 out before

  • Mitch Garver vs Justin Verlander0-0

    Mitch Garver strikes out swinging.

    3-3, 6 pitches · 2 outs before

top 3rd(4)
  • Jon Singleton vs George Kirby0-0

    Jon Singleton grounds out, second baseman Dylan Moore to first baseman Ty France.

    0-0, 1 pitch · 0 outs before

  • Chas McCormick vs George Kirby0-0

    Chas McCormick grounds out, third baseman Josh Rojas to first baseman Ty France.

    1-1, 3 pitches · 1 out before

  • Yainer Diaz vs George Kirby0-0

    Yainer Diaz singles on a line drive to right fielder Dominic Canzone.

    1-0, 2 pitches · 2 outs before

  • Jose Altuve vs George Kirby0-0

    Jose Altuve grounds into a force out, third baseman Josh Rojas to second baseman Dylan Moore. Yainer Diaz out at 2nd.

    1-2, 4 pitches · 2 outs before

bottom 3rd(3)
  • Luke Raley vs Justin Verlander0-0

    Luke Raley called out on strikes.

    0-3, 5 pitches · 0 outs before

  • J.P. Crawford vs Justin Verlander0-0

    J.P. Crawford pops out to third baseman Alex Bregman.

    2-2, 9 pitches · 1 out before

  • Dylan Moore vs Justin Verlander0-0

    Dylan Moore pops out to second baseman Jose Altuve.

    2-0, 3 pitches · 2 outs before

top 4th(6)
  • Kyle Tucker vs George Kirby0-0

    Kyle Tucker called out on strikes.

    3-3, 7 pitches · 0 outs before

  • Yordan Alvarez vs George Kirby0-0

    Yordan Alvarez singles on a line drive to left fielder Luke Raley.

    0-0, 1 pitch · 1 out before

  • Jeremy Pena vs George Kirby0-0

    Jeremy Peña strikes out swinging.

    1-3, 4 pitches · 1 out before

  • Alex Bregman vs George Kirby0-0

    Alex Bregman singles on a sharp line drive to center fielder Julio Rodríguez. Yordan Alvarez to 3rd.

    1-2, 4 pitches · 2 outs before

  • Jake Meyers vs George Kirby1-0

    Jake Meyers singles on a fly ball to center fielder Julio Rodríguez. Yordan Alvarez scores. Alex Bregman to 3rd.

    3-2, 6 pitches · 2 outs before

  • Jon Singleton vs George Kirby1-0

    Jon Singleton strikes out swinging.

    1-3, 5 pitches · 2 outs before

bottom 4th(3)
  • Julio Rodriguez vs Justin Verlander1-0

    Julio Rodríguez strikes out swinging.

    1-3, 4 pitches · 0 outs before

  • Ty France vs Justin Verlander1-0

    Ty France flies out to left fielder Chas McCormick.

    0-1, 2 pitches · 1 out before

  • Josh Rojas vs Justin Verlander1-0

    Josh Rojas grounds out softly, pitcher Justin Verlander to first baseman Jon Singleton.

    2-0, 3 pitches · 2 outs before

top 5th(3)
  • Chas McCormick vs George Kirby1-0

    Chas McCormick flies out to center fielder Julio Rodríguez.

    2-2, 6 pitches · 0 outs before

  • Yainer Diaz vs George Kirby1-0

    Yainer Diaz strikes out swinging.

    1-3, 4 pitches · 1 out before

  • Jose Altuve vs George Kirby1-0

    Jose Altuve pops out to second baseman Dylan Moore.

    2-0, 3 pitches · 2 outs before

bottom 5th(4)
  • Mitch Haniger vs Justin Verlander1-0

    Mitch Haniger strikes out swinging.

    0-3, 3 pitches · 0 outs before

  • Dominic Canzone vs Justin Verlander1-1

    Dominic Canzone homers (5) on a line drive to right center field.

    0-0, 1 pitch · 1 out before

  • Mitch Garver vs Justin Verlander1-1

    Mitch Garver called out on strikes.

    0-3, 3 pitches · 1 out before

  • Luke Raley vs Justin Verlander1-1

    Luke Raley flies out sharply to center fielder Jake Meyers.

    1-1, 3 pitches · 2 outs before

top 6th(5)
  • Kyle Tucker vs George Kirby1-1

    Kyle Tucker called out on strikes.

    3-3, 7 pitches · 0 outs before

  • Yordan Alvarez vs George Kirby1-1

    Yordan Alvarez singles on a line drive to center fielder Julio Rodríguez.

    2-1, 4 pitches · 1 out before

  • Jeremy Pena vs George Kirby1-1

    Jeremy Peña singles on a ground ball to third baseman Josh Rojas. Yordan Alvarez to 3rd.

    3-2, 8 pitches · 1 out before

  • Alex Bregman vs George Kirby1-1

    Alex Bregman strikes out swinging.

    0-3, 3 pitches · 1 out before

  • Jake Meyers vs George Kirby1-1

    Jake Meyers grounds out, second baseman Dylan Moore to first baseman Ty France.

    0-0, 1 pitch · 2 outs before

bottom 6th(3)
  • J.P. Crawford vs Justin Verlander1-1

    J.P. Crawford strikes out swinging.

    2-3, 5 pitches · 0 outs before

  • Dylan Moore vs Justin Verlander1-1

    Dylan Moore strikes out swinging.

    2-3, 5 pitches · 1 out before

  • Julio Rodriguez vs Justin Verlander1-1

    Julio Rodríguez flies out to right fielder Kyle Tucker.

    0-0, 1 pitch · 2 outs before

top 7th(3)
  • Jon Singleton vs Trent Thornton1-1

    Jon Singleton strikes out swinging.

    2-3, 7 pitches · 0 outs before

  • Chas McCormick vs Trent Thornton1-1

    Chas McCormick strikes out swinging.

    3-3, 7 pitches · 1 out before

  • Yainer Diaz vs Trent Thornton1-1

    Yainer Diaz strikes out swinging.

    2-3, 5 pitches · 2 outs before

bottom 7th(4)
  • Ty France vs Justin Verlander1-1

    Ty France flies out to right fielder Kyle Tucker.

    2-2, 6 pitches · 0 outs before

  • Josh Rojas vs Justin Verlander1-1

    Josh Rojas flies out to left fielder Chas McCormick.

    0-2, 3 pitches · 1 out before

  • Mitch Haniger vs Justin Verlander1-1

    Mitch Haniger walks.

    4-1, 5 pitches · 2 outs before

  • Dominic Canzone vs Justin Verlander1-1

    Dominic Canzone flies out to left fielder Chas McCormick.

    2-1, 4 pitches · 2 outs before

top 8th(4)
  • Jose Altuve vs Gabe Speier1-1

    Jose Altuve singles on a line drive to center fielder Julio Rodríguez.

    0-0, 1 pitch · 0 outs before

  • Kyle Tucker vs Gabe Speier1-1

    Kyle Tucker lines out to right fielder Dominic Canzone.

    2-1, 4 pitches · 0 outs before

  • Yordan Alvarez vs Gabe Speier1-1

    Yordan Alvarez strikes out swinging.

    0-3, 3 pitches · 1 out before

  • Jeremy Pena vs Austin Voth1-1

    Jeremy Peña strikes out swinging.

    0-3, 3 pitches · 2 outs before

bottom 8th(3)
  • Cal Raleigh vs Bryan Abreu1-1

    Cal Raleigh strikes out on a foul tip.

    0-3, 3 pitches · 0 outs before

  • Luke Raley vs Bryan Abreu1-1

    Luke Raley strikes out swinging.

    1-3, 4 pitches · 1 out before

  • J.P. Crawford vs Bryan Abreu1-1

    J.P. Crawford strikes out swinging.

    2-3, 7 pitches · 2 outs before

top 9th(3)
  • Alex Bregman vs Andres Munoz1-1

    Alex Bregman pops out to shortstop J. P. Crawford.

    1-2, 6 pitches · 0 outs before

  • Jake Meyers vs Andres Munoz1-1

    Jake Meyers called out on strikes.

    2-3, 5 pitches · 1 out before

  • Jon Singleton vs Andres Munoz1-1

    Jon Singleton grounds out, third baseman Josh Rojas to first baseman Ty France.

    0-0, 1 pitch · 2 outs before

bottom 9th(5)
  • Dylan Moore vs Josh Hader1-1

    Dylan Moore strikes out swinging.

    0-3, 3 pitches · 0 outs before

  • Julio Rodriguez vs Josh Hader1-1

    Julio Rodríguez singles on a line drive to left fielder Chas McCormick.

    1-0, 2 pitches · 1 out before

  • Ty France vs Josh Hader1-1

    Ty France walks.

    4-2, 8 pitches · 1 out before

  • Ryan Bliss vs Josh Hader1-1

    Ryan Bliss strikes out swinging.

    3-3, 6 pitches · 1 out before

  • Mitch Haniger vs Josh Hader1-1

    Mitch Haniger strikes out swinging.

    2-3, 5 pitches · 2 outs before

top 10th(3)
  • Chas McCormick vs Mike Baumann1-1

    Chas McCormick flies out to right fielder Dominic Canzone.

    0-2, 3 pitches · 0 outs before

  • Victor Caratini vs Mike Baumann1-1

    Victor Caratini flies out to left fielder Luke Raley.

    0-0, 1 pitch · 1 out before

  • Jose Altuve vs Mike Baumann1-1

    Jose Altuve grounds out, shortstop J. P. Crawford to first baseman Ty France.

    0-0, 1 pitch · 2 outs before

bottom 10th(4)
  • Dominic Canzone vs Tayler Scott1-1

    Dominic Canzone grounds out, second baseman Jose Altuve to first baseman Mauricio Dubón. Jonatan Clase to 3rd.

    0-0, 1 pitch · 0 outs before

  • Cal Raleigh vs Tayler Scott1-1

    Cal Raleigh walks.

    4-1, 5 pitches · 1 out before

  • Luke Raley vs Tayler Scott1-1

    Luke Raley walks. Cal Raleigh to 2nd.

    4-2, 6 pitches · 1 out before

  • J.P. Crawford vs Tayler Scott1-2

    J.P. Crawford out on a sacrifice fly to right fielder Kyle Tucker. Jonatan Clase scores.

    0-1, 2 pitches · 1 out before

Analysis preview// illustrative example, not this page's real data
sample · team comparisonexample only
a:"Team A"b:"Team B"
Offensive ratingA 114.2 · B 108.9
Recent form (L10)A 6-4 · B 6-4
Head-to-headB leads 3-1
GET /v1/analysis/compare-teams?a=…&b=…Run this yourself via the API
Built on the StatHawk API

The page is the demo.

These requests and request patterns show how this page gets data from the same REST API and MCP server you can use in your own app or agent.

View this page's API recipe

Use the authenticated requests or fill in the labeled request templates, then adapt the response in your own product.

Authenticated request · GET /v1/contests/cst_06fhqd57g1y939727tr17v7nzw
curl "https://api.statshawk.ai/v1/contests/cst_06fhqd57g1y939727tr17v7nzw" \
  -H "X-API-Key: sk_live_YOUR_KEY_HERE"
Authenticated request · GET /v1/contests/cst_06fhqd57g1y939727tr17v7nzw/boxscore
curl "https://api.statshawk.ai/v1/contests/cst_06fhqd57g1y939727tr17v7nzw/boxscore" \
  -H "X-API-Key: sk_live_YOUR_KEY_HERE"
Authenticated request · GET /v1/contests/cst_06fhqd57g1y939727tr17v7nzw/matchup
curl "https://api.statshawk.ai/v1/contests/cst_06fhqd57g1y939727tr17v7nzw/matchup" \
  -H "X-API-Key: sk_live_YOUR_KEY_HERE"
Authenticated request · GET /v1/contests/cst_06fhqd57g1y939727tr17v7nzw/play-by-play?detail=full
curl "https://api.statshawk.ai/v1/contests/cst_06fhqd57g1y939727tr17v7nzw/play-by-play?detail=full" \
  -H "X-API-Key: sk_live_YOUR_KEY_HERE"
Try with MCP

Connect StatHawk to your agent, then ask it to explain and extend the data shown on this page.

Build this view in the API reference
$claude mcp add statshawk https://mcp.statshawk.ai/mcp