# Brazil BCB Data — SELIC, BRL/USD, IPCA, IBC-Br (`gochujang/brazil-bcb-data`) Actor

Fetch Brazil's official economic data from the Banco Central do Brasil (BCB) SGS API: SELIC policy rate, BRL/USD PTAX, IPCA inflation, CDI, unemployment, retail trade, IBC-Br economic activity. No API key required.

- **URL**: https://apify.com/gochujang/brazil-bcb-data.md
- **Developed by:** [Hojun Lee](https://apify.com/gochujang) (community)
- **Categories:** Business
- **Stats:** 2 total users, 1 monthly users, 100.0% runs succeeded, 0 bookmarks
- **User rating**: No ratings yet

## Pricing

$1.00 / 1,000 series fetcheds

This Actor is paid per event. You are not charged for the Apify platform usage, but only a fixed price for specific events.

Learn more: https://docs.apify.com/actors/running/actors-in-store.md#pay-per-event

## What's an Apify Actor?

An Actor is a serverless cloud program that runs on the Apify platform. It has two run modes.
In Batch mode, an Actor accepts a well-defined JSON input, performs an action which can take anything from a few seconds to a few hours,
and optionally produces a well-defined JSON output, datasets with results, or files in key-value store.
In Standby mode, an Actor provides a web server which can be used as a website, API, or an MCP server.

Apify vocabulary and the platform model are defined once, in the agent quickstart at https://apify.com/agents.md.

## How to integrate an Actor?

If asked about integration, you help developers integrate Actors into their projects.
You adapt to their stack and deliver integrations that are safe, well-documented, and production-ready.

Do not guess an integration path. Every one of them is in the agent quickstart at https://apify.com/agents.md: the Apify MCP server, Agent Skills with the Apify CLI, the JavaScript and Python clients, the REST API, and the account-free path for an agent with no human to sign in. It also carries the rule on stating cost before the first paid run.

For examples already wired to this Actor's own input schema, see the [API](#api) section below.

Each client library has reference documentation the quickstart does not restate: [JavaScript/TypeScript](https://docs.apify.com/api/client/js/docs.md) (`npm install apify-client`) and [Python](https://docs.apify.com/api/client/python/docs.md) (`pip install apify-client`).

# README

## Brazil BCB Data — SELIC, BRL/USD, IPCA, IBC-Br

Fetch official Brazilian economic data from the **Banco Central do Brasil (BCB) SGS API** (Sistema Gerenciador de Séries Temporais). Covers the SELIC policy rate, BRL/USD PTAX exchange rate, IPCA inflation, CDI, unemployment, retail trade volume, and the IBC-Br economic activity index. No API key required.

### What It Does

- Fetches 10 pre-configured BCB economic time series
- All series fetched concurrently for speed
- Dates are standardized to YYYY-MM-DD format
- Configurable date range (`since`/`until`) or last N observations (`recent`)

### Available Series

| Key | Name | Frequency | Category |
|-----|------|-----------|----------|
| `selic_daily` | SELIC Daily Rate (annualized) | Daily | interest_rates |
| `selic_target` | SELIC Target Rate (COPOM policy rate) | Daily | interest_rates |
| `cdi_daily` | CDI Daily Rate | Daily | interest_rates |
| `ipca_monthly` | IPCA — CPI Monthly Variation | Monthly | inflation |
| `inpc_monthly` | INPC — Broad CPI Monthly Variation | Monthly | inflation |
| `brl_usd` | BRL/USD PTAX Rate | Daily | fx_rates |
| `brl_eur` | BRL/EUR Monthly Average | Monthly | fx_rates |
| `ibc_br` | IBC-Br — Economic Activity Index | Monthly | economic_activity |
| `unemployment` | Unemployment Rate (PNAD Continuous) | Monthly | labour |
| `retail_index` | Retail Trade Volume Index | Monthly | economic_activity |

### Input Parameters

| Parameter | Type | Default | Description |
|-----------|------|---------|-------------|
| `series` | array | 6 key series | BCB series keys to fetch |
| `since` | string | `"01/01/2020"` | Start date (DD/MM/YYYY). Ignored if `recent` is set. |
| `until` | string | today | End date (DD/MM/YYYY). Ignored if `recent` is set. |
| `recent` | integer | `0` | Return only the N most recent observations per series. |

### Sample Output

```json
[
  {
    "series": "selic_target",
    "series_code": 432,
    "label": "SELIC Target Rate (COPOM policy rate)",
    "date": "2024-06-14",
    "value": 10.5,
    "unit": "% a.a.",
    "frequency": "daily",
    "category": "interest_rates",
    "country": "Brazil",
    "source": "Banco Central do Brasil (BCB) SGS"
  },
  {
    "series": "ipca_monthly",
    "series_code": 433,
    "label": "IPCA — CPI Monthly Variation",
    "date": "2024-06-01",
    "value": 0.44,
    "unit": "% monthly",
    "frequency": "monthly",
    "category": "inflation",
    "country": "Brazil",
    "source": "Banco Central do Brasil (BCB) SGS"
  },
  {
    "series": "brl_usd",
    "series_code": 10813,
    "label": "BRL/USD PTAX Rate",
    "date": "2024-06-14",
    "value": 5.3621,
    "unit": "BRL per USD",
    "frequency": "daily",
    "category": "fx_rates",
    "country": "Brazil",
    "source": "Banco Central do Brasil (BCB) SGS"
  }
]
```

### Use Cases

**BRL carry trade analysis** — Monitor the SELIC target rate alongside BRL/USD PTAX to model the interest rate differential and carry attractiveness of BRL versus USD or EUR.

**COPOM rate decision forecasting** — Track IPCA monthly inflation alongside the SELIC target rate to model the Monetary Policy Committee's (COPOM) reaction function and anticipate BRL rate path changes.

**Brazil macro cycle** — Combine IBC-Br (monthly GDP proxy), unemployment, and retail index to track Brazil's economic cycle — crucial for BRL and Brazilian equity allocation decisions.

**BRL risk/reward** — High SELIC + high IPCA + BRL/USD trend together paint the real-return picture for BRL-denominated assets.

### Pricing

- **$0.001 per series fetched** (PPE — Pay Per Event)
- Default run (6 series) ≈ $0.006

### FAQ

**Do I need an API key?**
No. The BCB SGS API is free and open — no registration required.

**What is IBC-Br?**
The IBC-Br (Índice de Atividade Econômica do Banco Central) is Brazil's monthly economic activity proxy, often called the "Brazilian GDP monthly" by traders. It leads the official quarterly IBGE GDP estimate.

**What is PTAX?**
PTAX is the official BRL/USD exchange rate published daily by the BCB. It is the reference rate used for most FX derivatives settlement in Brazil.

**What is SELIC vs CDI?**
SELIC is the Brazilian overnight lending rate (interbank collateralized) set by COPOM. CDI (Certificado de Depósito Interbancário) tracks SELIC very closely and is the reference for floating-rate instruments. `selic_target` gives the COPOM decision rate; `selic_daily` and `cdi_daily` give the market-traded daily rates.

### Data Source

Official [BCB SGS API](https://www.bcb.gov.br/estatisticas/indecomp) — Banco Central do Brasil, free public data.

***

### Related actors

- [BIS Central Bank Rates](https://apify.com/gochujang/bis-central-bank-data) — Global central bank policy rates to compare BCB SELIC with Fed, ECB, and other EM central banks
- [Currency Exchange Tracker](https://apify.com/gochujang/currency-exchange-tracker) — BRL/USD and cross-rate data to pair with BCB exchange rate policy data
- [IMF Economic Data Tracker](https://apify.com/gochujang/imf-economic-data) — Brazil GDP and fiscal projections from IMF to contextualize BCB monetary policy

### Feedback

If this actor powers your Brazil macro research, a review helps others find it: [Leave a review on Apify Store](https://apify.com/gochujang/brazil-bcb-data#reviews)

***

**Keywords:** Brazil economic data, SELIC rate, BRL USD exchange rate, IPCA inflation Brazil, BCB SGS API, CDI rate Brazil, Brazil unemployment, Banco Central do Brasil, Brazilian macro data, IBC-Br economic activity, Brazil interest rate, emerging market data, Brazilian economy, real exchange rate, Brazil monetary policy

# Actor input Schema

## `series` (type: `array`):

BCB series keys to fetch. Available: selic_daily, selic_target, cdi_daily, ipca_monthly, inpc_monthly, brl_usd, brl_eur, ibc_br, unemployment, retail_index.

## `since` (type: `string`):

Start date in DD/MM/YYYY format. Ignored if 'recent' is set.

## `until` (type: `string`):

End date in DD/MM/YYYY format. Defaults to today. Ignored if 'recent' is set.

## `recent` (type: `integer`):

Return only the N most recent data points per series. Set to 0 to use since/until date range instead.

## Actor input object example

```json
{
  "series": [
    "selic_target",
    "ipca_monthly",
    "brl_usd",
    "ibc_br",
    "unemployment",
    "retail_index"
  ],
  "since": "01/01/2020",
  "until": "",
  "recent": 0
}
```

# Actor output Schema

## `results` (type: `string`):

No description

# API

You can run this Actor programmatically using our API. Below are code examples in JavaScript, Python, and CLI, as well as the OpenAPI specification and MCP server setup.

## JavaScript example

```javascript
import { ApifyClient } from 'apify-client';

// Initialize the ApifyClient with your Apify API token
// Replace the '<YOUR_API_TOKEN>' with your token
const client = new ApifyClient({
    token: '<YOUR_API_TOKEN>',
});

// Prepare Actor input
const input = {};

// Run the Actor and wait for it to finish
const run = await client.actor("gochujang/brazil-bcb-data").call(input);

// Fetch and print Actor results from the run's dataset (if any)
console.log('Results from dataset');
console.log(`💾 Check your data here: https://console.apify.com/storage/datasets/${run.defaultDatasetId}`);
const { items } = await client.dataset(run.defaultDatasetId).listItems();
items.forEach((item) => {
    console.dir(item);
});

// 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/js/docs

```

## Python example

```python
from apify_client import ApifyClient

# Initialize the ApifyClient with your Apify API token
# Replace '<YOUR_API_TOKEN>' with your token.
client = ApifyClient("<YOUR_API_TOKEN>")

# Prepare the Actor input
run_input = {}

# Run the Actor and wait for it to finish
run = client.actor("gochujang/brazil-bcb-data").call(run_input=run_input)

# Fetch and print Actor results from the run's dataset (if there are any)
print(f"💾 Check your data here: https://console.apify.com/storage/datasets/{run.default_dataset_id}")
for item in client.dataset(run.default_dataset_id).iterate_items():
    print(item)

# 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/python/docs/quick-start

```

## CLI example

```bash
echo '{}' |
apify call gochujang/brazil-bcb-data --silent --output-dataset

```

## MCP server setup

```json
{
    "mcpServers": {
        "apify": {
            "type": "http",
            "url": "https://mcp.apify.com/?tools=fetch-actor-details,gochujang/brazil-bcb-data"
        }
    }
}
```

The hosted server signs you in with OAuth on first connect, so no API token belongs in this config. Clients without OAuth support can send an `Authorization: Bearer <APIFY_API_TOKEN>` header instead, using a token from API & Integrations in Apify Console (https://console.apify.com/settings/integrations).

## OpenAPI specification

Download the OpenAPI definition: https://api.apify.com/v2/actors/Y0ghhDYTGxku9OcIh/builds/ILggpmnE17SbNmMRh/openapi.json
