# Real GDP: Real GDP by state: Professional, scientific, and technical services (54) — Michigan (chained 2017 USD mn)

Real GDP: Real GDP by state: Professional, scientific, and technical services (54) — Michigan (chained 2017 USD mn) was 52,545 chained 2017 USD mn in 2025, up 1.2% from 2024.
That is the highest reading since the series began in 1997.
Over the past ten years it has ranged from 37,310 chained 2017 USD mn (2015) to 52,545 chained 2017 USD mn (2025), averaging 44,536 chained 2017 USD mn.

- Source agency: U.S. Bureau of Economic Analysis (Regional Economic Accounts)
- Makrognosis code: `US-MI.GDP.A.NSA.IND-BEA60`
- 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-professional-scientific-and-technical-us-mi-gdp-a-nsa-ind-bea60

## Recent data

| Period | Value |
|---|---:|
| 2025 | 52,545 chained 2017 USD mn |
| 2024 | 51,927 chained 2017 USD mn |
| 2023 | 51,384 chained 2017 USD mn |
| 2022 | 49,261 chained 2017 USD mn |
| 2021 | 45,244 chained 2017 USD mn |
| 2020 | 40,408 chained 2017 USD mn |
| 2019 | 41,840 chained 2017 USD mn |
| 2018 | 41,363 chained 2017 USD mn |
| 2017 | 39,874 chained 2017 USD mn |
| 2016 | 38,741 chained 2017 USD mn |
| 2015 | 37,310 chained 2017 USD mn |
| 2014 | 35,832 chained 2017 USD mn |
| 2013 | 34,838 chained 2017 USD mn |
| 2012 | 33,748 chained 2017 USD mn |
| 2011 | 32,044 chained 2017 USD mn |
| 2010 | 30,039 chained 2017 USD mn |
| 2009 | 28,901 chained 2017 USD mn |
| 2008 | 32,256 chained 2017 USD mn |
| 2007 | 31,365 chained 2017 USD mn |
| 2006 | 31,700 chained 2017 USD mn |
| 2005 | 32,534 chained 2017 USD mn |
| 2004 | 32,458 chained 2017 USD mn |
| 2003 | 32,617 chained 2017 USD mn |
| 2002 | 32,371 chained 2017 USD mn |

## API

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

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