Brazil Selic Rate, IPCA Inflation & USD/BRL Daily Panel
Pricing
from $6.00 / 1,000 results
Brazil Selic Rate, IPCA Inflation & USD/BRL Daily Panel
Daily Brazil panel from the central bank: Selic target and annualised rate, CDI, USD/BRL and EUR/BRL, IPCA and IGP-M inflation dated to publication, ex-post real Selic rate, changes and percentiles in one row per day.

What does Brazil Selic Rate, IPCA Inflation & USD/BRL Daily Panel do?
Brazil Selic, Inflation & BRL Panel returns one row per Brazilian business day from Banco Central do Brasil's SGS time-series system. Each row holds the Selic target rate, the annualised Selic and CDI rates, the US dollar and euro exchange rates against the real, IPCA monthly and 12-month inflation and IGP-M monthly inflation dated to the day they became public, the ex-post real Selic rate (Selic against 12-month IPCA), the CDI-Selic gap, daily Selic changes, USD/BRL 1-day and 20-day changes and the 1-year percentile of USD/BRL. The monthly inflation figures are dated by publication, which avoids look-ahead in backtests.
Why use Brazil Selic Rate, IPCA Inflation & USD/BRL Daily Panel?
- Ready to join: one row per business day, aligned across rates, inflation and FX.
- Inflation dated to publication day, so backtests do not peek into the future.
- Derived features included: real Selic rate, changes and percentiles.
- Official source: Banco Central do Brasil SGS.
- Bulk history in one run or a daily delta. No API key or login.
What makes this different
SGS series come one code at a time with date formats and query limits, and monthly inflation is dated to its reference month, which leaks the future into models. This Actor pulls the series in windows, aligns them by date, dates inflation by publication and computes the real rate, ready for a model.
Who can use the Brazil Selic, Inflation & BRL Panel and how?
- Quant researchers: add Brazil rates, inflation and BRL features to models.
- Emerging-market traders: track carry, the real Selic rate and the currency together.
- Portfolio managers: monitor Brazil monetary conditions.
- Economists and students: study Selic, inflation and the exchange rate.
- Newsletter writers: publish a daily Brazil macro table.
- Fintech apps: show rate context beside Brazilian accounts.
- AI agent builders: let an assistant answer where Selic and the dollar rate are.
- Backtesting platforms: filter signals by real-rate or currency regime.
How it works

- Your input — set a date range or a lookback in days.
- The Actor collects it — the Actor reads Banco Central do Brasil and joins the series by date.
- Your output — you get one row per trading day with derived features; schedule it daily with delta mode to append each new day.
What data can you extract?
The dataset has 19 fields per row:
| Field | Type | Description |
|---|---|---|
date | string | Trading date, YYYY-MM-DD. |
ipca_month_pct | number | IPCA inflation for the month, percent, dated to its publication. |
selic_annual | number | Annualised realised Selic rate, percent. |
cdi_annual | number | Annualised CDI rate, percent. |
ipca_12m_pct | number | IPCA 12-month inflation, percent, dated to its publication. |
eur_brl | number | Reais per euro. |
selic_target | number | Selic target rate, percent per year. |
usd_brl | number | Reais per US dollar. |
igpm_month_pct | number | IGP-M inflation for the month, percent, dated to its publication. |
real_selic_ex_post | number | Ex-post real Selic rate against 12-month IPCA, percent. |
cdi_minus_selic_bps | number | CDI minus Selic, basis points. |
change_selic_bps | number | 1-day change in selic, basis points. |
usd_brl_change_1d_pct | number | 1-day change in usd brl, percent. |
usd_brl_percentile_1y | number | Percentile of usd brl over the last 252 trading days. |
usd_brl_change_20d_pct | number | 20-day change in usd brl, percent. |
fetch_path | string | How the data was obtained. |
source | string | Data source. |
scraped_at | string | Timestamp. |
actor_version | string | Actor version. |
How to use Brazil Selic Rate, IPCA Inflation & USD/BRL Daily Panel

- Open the Actor and go to the Input tab.
- Leave the dates empty for the last 90 days, or set Start date and End date for a long history. Turn on delta mode and schedule the Actor daily to append each new day.
- Optionally set filters and a Max results limit.
- Click Start. A default run finishes in under a minute.
- Open the Output tab, then download the dataset or connect it to your tools.
Input Parameters
| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
startDate | string | No | — | First trading date, YYYY-MM-DD. Leave empty to use the lookback below. |
endDate | string | No | — | Last trading date, YYYY-MM-DD. Leave empty for today. |
lookbackDays | integer | No | 90 | Used when no start date is set. |
newestFirst | boolean | No | true | Return the newest day first. Turn off for chronological order. |
maxItems | integer | No | 0 | Cap on returned rows. Set 0 for no limit. |
deltaMode | boolean | No | false | After the first run with a delta key, return and bill only days not delivered before. |
deltaStateKey | string | No | "default" | Name of the tracked stream. |
proxyConfiguration | object | No | {"useApifyProxy":false} | Optional proxy. The sources work without one. |
Output Data

selic_target is the policy target and selic_annual the realised annualised Selic; cdi_annual is the CDI. usd_brl and eur_brl are reais per dollar and per euro. ipca_* and igpm_month_pct are inflation percentages, carried from the day they were published. real_selic_ex_post is (1 + Selic) / (1 + 12-month IPCA) - 1. usd_brl_percentile_1y ranks the exchange rate over the last 252 trading days.

A real dataset item:
{"date": "2026-09-25","ipca_month_pct": -0.32,"selic_annual": 13.65,"cdi_annual": 13.65,"ipca_12m_pct": 4.22,"eur_brl": 5.928,"selic_target": null,"usd_brl": null,"igpm_month_pct": null,"real_selic_ex_post": 9.048,"cdi_minus_selic_bps": 0,"change_selic_bps": 0,"usd_brl_change_1d_pct": null,"usd_brl_percentile_1y": null,"usd_brl_change_20d_pct": null,"fetch_path": "bcb_sgs","source": "banco_central_do_brasil_sgs","scraped_at": "2026-09-27T05:08:02.259Z","actor_version": "1.0.0"}
How to read and use the results
- Read selic_target and change_selic_bps for policy moves.
- Read real_selic_ex_post for the real interest rate.
- Check usd_brl_percentile_1y for currency stress.
- Read the inflation fields knowing they are dated by publication.
- Join on date to your own data.
- Schedule with delta mode to append each day.
Usage Examples
Last 90 days
{}
History for a model
{"startDate": "2010-01-01","newestFirst": false}
Only new days
{"deltaMode": true,"deltaStateKey": "daily"}
Tips for Best Results
- Join on the date column; markets are closed on weekends and holidays, so those dates have no row.
- Run the Actor once for the whole history, then schedule it daily with delta mode.
- Use the percentile fields rather than raw levels to compare conditions across years.
- Curve inversion is a slow signal; combine it with faster features such as daily changes.
- Use real_selic_ex_post for carry-trade style features.
- Default is 5 results for a fast test. Set the max to 0 to return everything available.
Reliability by mode
| Mode | Status | Needs login or key? | Notes |
|---|---|---|---|
| Selic, CDI, USD/BRL | ✅ | No | Published by Banco Central do Brasil. |
| IPCA and IGP-M inflation | 🟡 | No | Dated by approximate publication lag. |
| Real Selic rate | 🟡 | No | Ex-post, from past inflation. |
| Intraday or real-time values | ❌ | - | End-of-day only. |
✅ works as described, 🟡 works with caveats, ❌ not supported.
Only new records (delta mode)
Turn on Only new trading days (delta mode) and set a Delta key. The first run returns the whole range; later runs return, and bill, only trading days not delivered before.
Known Limitations
- Monthly inflation is dated with an approximate publication lag (about ten days after month end), which is a point-in-time approximation.
- The real rate is an ex-post measure using past inflation, not market expectations.
- Exchange rates are the central bank's reference rates.
- The newest day can be missing until the central bank publishes it.
- This is information, not financial advice.
Integrations
Run it from the Apify API, on a schedule, or from a webhook. Send results straight to Google Sheets, Make, Zapier, Slack or your own database with Apify's built-in integrations.
Export Formats
Download the dataset as JSON, CSV, Excel, XML, HTML table or RSS from the Output tab or the API.
Frequently Asked Questions
Where does the data come from?
The Banco Central do Brasil SGS time-series service, which publishes these series for free.
How far back does it go?
Selic, CDI and exchange rates go back decades; each series starts at its own publication date.
Does it need an API key or account?
No.
Can I get intraday data?
No, the data is end-of-day.
Why is a value empty?
The series did not exist on that date, or the source has not published that day yet.
Am I charged for empty days?
No, only for rows returned.
Do I need an account or login?
No. The Actor reads public Banco Central do Brasil data and needs no account or API key.
Am I charged for failed runs or empty results?
You are only charged for results that are actually written to the dataset.
Can I run it on a schedule?
Yes. Create a Task with your input and add a schedule in Apify Console. With monitor mode on, each scheduled run returns only what changed since the previous one.
Changelog
- 2026-09-27: First release.
Enterprise and custom work
Need higher volumes, a custom output schema, dedicated scheduling or a no-breaking-changes commitment for a production pipeline? Open an issue on the Actor page and describe your use case. Bulk terms and custom builds are available.
Support
Questions or a missing field? Open an issue from the Issues tab on this Actor's page and it will be looked at.
Legal / Responsible Use
This Actor reads publicly published Banco Central do Brasil data. You are responsible for how you use the data. It is not financial advice and not affiliated with Banco Central do Brasil.