# Real GDP: Real GDP by state: Transportation and utilities (22,48-49) — Michigan (chained 2017 USD mn)

Real GDP: Real GDP by state: Transportation and utilities (22,48-49) — Michigan (chained 2017 USD mn) was 25,627 chained 2017 USD mn in 2025, up 0.5% from 2024.
That is the highest reading since the series began in 1997.
Over the past ten years it has ranged from 21,320 chained 2017 USD mn (2015) to 25,627 chained 2017 USD mn (2025), averaging 24,088 chained 2017 USD mn.

- Source agency: U.S. Bureau of Economic Analysis (Regional Economic Accounts)
- Makrognosis code: `US-MI.GDP.A.NSA.IND-BEA89`
- Frequency: annual
- Units: chained 2017 USD mn
- Coverage: 1997-01-01 to 2025-01-01 (29 observations)
- Page: https://makrognosis.robomacro.com/data/united-states/real-gdp-real-gdp-by-state-transportation-and-utilities-22-48-49-us-mi-gdp-a-nsa-ind-bea89

## Recent data

| Period | Value |
|---|---:|
| 2025 | 25,627 chained 2017 USD mn |
| 2024 | 25,495 chained 2017 USD mn |
| 2023 | 25,330 chained 2017 USD mn |
| 2022 | 24,256 chained 2017 USD mn |
| 2021 | 24,934 chained 2017 USD mn |
| 2020 | 23,936 chained 2017 USD mn |
| 2019 | 24,238 chained 2017 USD mn |
| 2018 | 23,766 chained 2017 USD mn |
| 2017 | 23,280 chained 2017 USD mn |
| 2016 | 22,782 chained 2017 USD mn |
| 2015 | 21,320 chained 2017 USD mn |
| 2014 | 20,913 chained 2017 USD mn |
| 2013 | 21,456 chained 2017 USD mn |
| 2012 | 21,320 chained 2017 USD mn |
| 2011 | 20,489 chained 2017 USD mn |
| 2010 | 20,084 chained 2017 USD mn |
| 2009 | 18,203 chained 2017 USD mn |
| 2008 | 20,523 chained 2017 USD mn |
| 2007 | 20,292 chained 2017 USD mn |
| 2006 | 19,964 chained 2017 USD mn |
| 2005 | 19,802 chained 2017 USD mn |
| 2004 | 19,969 chained 2017 USD mn |
| 2003 | 18,802 chained 2017 USD mn |
| 2002 | 18,252 chained 2017 USD mn |

## API

```
curl -H "X-API-Key: $MAKROGNOSIS_KEY" \
  "https://makrognosis.robomacro.com/v1/series/US-MI.GDP.A.NSA.IND-BEA89"

# Python
import requests
r = requests.get("https://makrognosis.robomacro.com/v1/series/US-MI.GDP.A.NSA.IND-BEA89",
                 headers={"X-API-Key": KEY})
obs = r.json()["observations"]
```
