Real Personal Income
Get Real Personal Income Excluding Current Transfer Receipts for the United States from the Bureau of Economic Analysis.
This is the exact series (not a proxy) the NBER’s Business Cycle Dating Committee uses as one of its four primary coincident indicators for dating US recessions - alongside Nonfarm Payrolls (see get_nonfarm_payrolls), the Industrial Production Index (see get_industrial_production_index) and Real Personal Consumption Expenditures. It measures aggregate household income from wages, investments and proprietors’ income, deliberately excluding government transfer payments (e.g. unemployment insurance, Social Security) so that the series reflects income generated by ongoing economic activity rather than the fiscal cushioning that automatically increases during a downturn.
No API key is needed: without a FRED API key the data comes from the Bureau of Economic Analysis directly, which gives the same figures. When a FRED API key is set (see the fred_api_key parameter of the Economics class), it comes from FRED.
See definition: https://fred.stlouisfed.org/series/W875RX1
Also known as: RPI less transfers, NBER real income indicator.
Real Personal Income in Python or via the MCP
Install the Finance Toolkit with:
pip install financetoolkit -U
Then call get_real_personal_income as shown below.
from financetoolkit import Economics
economics = Economics(
start_date='2020-01-01',
end_date="2025-12-31",
)
economics.get_real_personal_income()
Or, after setting up the Finance Toolkit MCP, ask:
How did US real personal income excluding government transfers develop each month from August to December 2025?
Which returns:
| Date | United States |
|---|---|
| 2025-08-01 | 16911.2 |
| 2025-09-01 | 16923.1 |
| 2025-10-01 | 16921.8 |
| 2025-11-01 | 16960.6 |
| 2025-12-01 | 16943.8 |
Parameters
get_real_personal_income accepts the following parameters.
| Parameter | Type | Description | Example |
|---|---|---|---|
rolling | int | The rolling window size to use for smoothing the data (simple moving average). Defaults to None. | 4 |
trailing | int | The trailing window size to use for summing the data over trailing periods. Defaults to None. | 4 |
growth | bool | Whether to return the growth data or the actual data. Defaults to False. | True |
lag | int | The number of periods to lag the data by. Defaults to 1. | 4 |
standardize | bool | Whether to standardize (Z-Score) the result. When combined with growth=True, standardizes the growth values instead of the raw values. Defaults to False. | True |
rounding | int | None | The number of decimals to round the results to. Defaults to None. | 2 |