# SCB Sweden Statistics PxWeb Scraper (`parseforge/scb-sweden-pxweb-scraper`) Actor

Collects official Swedish statistics datasets from SCB's PxWeb API by subject path. Returns each dataset as a structured row with metadata, variable labels, and data values. No authentication required.

- **URL**: https://apify.com/parseforge/scb-sweden-pxweb-scraper.md
- **Developed by:** [ParseForge](https://apify.com/parseforge) (community)
- **Categories:** Education, Business, Automation
- **Stats:** 2 total users, 1 monthly users, 89.7% runs succeeded, 0 bookmarks
- **User rating**: No ratings yet

## Pricing

from $7.50 / 1,000 results

This Actor is paid per event. You are not charged for the Apify platform usage, but only a fixed price for specific events.
Since this Actor supports Apify Store discounts, the price gets lower the higher subscription plan you have.

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

## What's an Apify Actor?

Actors are web data automations that power AI and operations. They run on the Apify platform to scrape websites, process data, connect APIs, and automate workflows.
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.
Actors are written with capital "A".

## 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.
The best way to integrate Actors is as follows.

- **AI agents and MCP clients** — the [Apify MCP server](https://docs.apify.com/integrations/mcp.md) at `https://mcp.apify.com` (remote, streamable HTTP, OAuth on first use).
- **Agentic workflows and local Actor development** — [Agent Skills](https://apify.com/.well-known/agent-skills/index.json) with the [Apify CLI](https://docs.apify.com/cli/docs.md): `npm install -g apify-cli`, then `apify login`.
- **JavaScript/TypeScript projects** — the official [JS/TS client](https://docs.apify.com/api/client/js/docs.md): `npm install apify-client`.
- **Python projects** — the official [Python client](https://docs.apify.com/api/client/python/docs.md): `pip install apify-client`.
- **Any other language** — the [REST API](https://docs.apify.com/api/v2.md).

For usage examples, see the [API](#api) section below.

For more details, see Apify documentation as [Markdown index](https://docs.apify.com/llms.txt) and [Markdown full-text](https://docs.apify.com/llms-full.txt).

# README

[![ParseForge](https://raw.githubusercontent.com/ParseForge/apify-assets/main/banner.jpg)](https://apify.com/parseforge?fpr=vmoqkp)

### SCB Sweden Statistics PxWeb Scraper

**Scrape official Swedish statistics from SCB's PxWeb API, up to a million datasets per run.** Every dataset returns its full metadata, variable labels, and data values in a structured row. No API key required. Export to CSV, JSON, Excel, or XML.

SCB's Statistical Database holds thousands of official Swedish datasets on population, economy, labour, education, and more, but browsing and downloading them manually through the PxWeb interface is slow. This Actor reads the public PxWeb API directly, navigates the subject tree from any path you specify, and returns each dataset as one flat row with its title, variables, and data. It works for any subject area, from national accounts to municipal demographics.

| Who uses it | What they scrape SCB Sweden for |
|---|---|
| Economic analysts | Pull the latest GDP, inflation, and labour market figures into their models. |
| Academic researchers | Gather demographic, education, or health datasets for longitudinal studies. |
| Municipal planners | Collect population projections and housing statistics for local planning. |
| Data journalists | Retrieve official statistics on crime, environment, or migration for reporting. |

### What it does

This Actor collects SCB Sweden PxWeb datasets by subject path and returns each one as a structured row with metadata, variable labels, and data values.

- 🌳 **Subject tree navigation:** Start at the root or drill into a specific path like BE/BE0101 for economic statistics.
- 📊 **Full dataset extraction:** Each row contains the dataset title, variable names, value labels, and the actual data points.
- 🇸🇪 **Swedish-language metadata:** Variable and value labels are returned in Swedish as published by SCB, preserving original terminology.
- ⚙️ **Configurable volume:** Set a maximum number of datasets to collect, from a single test to a full database crawl.

Results export to CSV, JSON, Excel, or XML, or straight from the API.

### What you can do with SCB Sweden data

**📈 Monitor Swedish economic indicators.**

An analyst runs the Actor weekly on the BE path to collect the latest national accounts, CPI, and employment figures for a dashboard.

**🏘️ Compare municipal demographics.**

A regional planner scrapes population by age, sex, and municipality to update a five-year housing demand forecast.

**🎓 Research education outcomes.**

A PhD student collects datasets on educational attainment and labour market entry for a dissertation on Swedish school reform.

**📰 Fact-check with official data.**

A journalist retrieves crime statistics and environmental emissions data to verify claims in a public debate.

### Why choose this scraper

|  | What you get |
|---|---|
| **Official source** | Data comes directly from SCB, Sweden's national statistical office, with full traceability. |
| **No registration** | The PxWeb API is public. No account, no API key, no authentication needed. |
| **Structured output** | Every dataset is flattened into a consistent row schema ready for analysis or a database. |
| **Any subject area** | Works across all SCB domains: population, economy, labour, education, environment, and more. |

### How it compares

No other Store actor targets SCB Sweden the same way, so the honest comparison is with the alternatives teams actually weigh.

| | SCB Sweden Statistics PxWeb Scraper | Build it in-house | By hand |
|---|---|---|---|
| Setup | Run it now, zero config | Days of engineering | None, but hours per pull |
| When SCB Sweden changes | Maintained for you | You fix it | You re-learn the page |
| Proxies, retries, anti-bot | Built in | Your problem | Browser only |
| Output | Fixed JSON schema, CSV/Excel export | Whatever you build | Copy-paste |
| Cost | Pay per result | Engineering time | Analyst hours |

### Configure the run

Drive the Actor from a subject path within the SCB Statistical Database, and limit the total datasets collected per run. The Input tab lists every parameter.

A first run with the defaults:

```json
{
  "maxItems": 10
}
```

A larger pull:

```json
{
  "maxItems": 200
}
```

### Pricing

Pay-per-result: **$0.0085 per result** collected. You pay only for the results written to your dataset.

| Results collected | Approximate cost |
|---|---|
| 100 results | $0.85 |
| 1,000 results | $8.50 |
| 10,000 results | $85.00 |

New Apify accounts start with $5 in free credit.

### Free users

Free-plan runs return up to 10 results as a preview. [Upgrade your Apify plan](https://console.apify.com/sign-up?fpr=vmoqkp) to collect up to 1,000,000 results per run.

### Run it

1. [Create a free Apify account with $5 in credit](https://console.apify.com/sign-up?fpr=vmoqkp).
2. Open the [SCB Sweden Statistics PxWeb Scraper](https://apify.com/parseforge/scb-sweden-pxweb-scraper?fpr=vmoqkp).
3. Set your inputs and any filters, then click **Start**.
4. Export the results as CSV, Excel, JSON, or XML from the **Dataset** tab.

Run it programmatically through the [Apify API](https://docs.apify.com/api/v2) (`run-sync-get-dataset-items`) or the [ApifyClient](https://docs.apify.com/api/client/js) for JavaScript and Python.

### Use with AI agents (MCP)

Give an AI agent live access to SCB Sweden through the Model Context Protocol. Add the Actor to Claude, Cursor, or any MCP client:

```bash
claude mcp add --transport http apify "https://mcp.apify.com/?tools=parseforge/scb-sweden-pxweb-scraper"
```

Then prompt it in plain language to run the scraper and read back the results.

### Troubleshooting

**Why am I getting no results?**

Check that your subject path is valid. Try leaving the path empty to start from the root, or verify the exact path spelling on SCB's website. Also ensure maxItems is set to a number greater than zero.

**The run is taking too long.**

Reduce the maxItems parameter to limit how many datasets are collected. You can also narrow the subject path to a more specific branch of the database.

**Some datasets seem incomplete.**

The Actor returns exactly what SCB's API provides. Large datasets with many variables may have truncated metadata. Try accessing the same dataset on SCB's website to compare.

**I got an error about the path format.**

Use forward slashes between levels, like BE/BE0101/BE0101A. Do not include a leading or trailing slash. The path is case-sensitive as defined by SCB.

**Can I get data for a specific municipality or region?**

Regional breakdowns are part of the dataset content. Collect the dataset that covers your topic and region, then filter the returned data rows for your specific municipality.

### FAQ

| Question | Answer |
|---|---|
| What is SCB? | SCB, or Statistiska centralbyrån, is Statistics Sweden, the national statistical office responsible for official Swedish statistics across all sectors. |
| What is PxWeb? | PxWeb is the web-based interface and API that SCB uses to publish its Statistical Database. This Actor reads the API directly, bypassing the manual browser interface. |
| Do I need an API key or login? | No. The SCB PxWeb API is publicly accessible and requires no authentication, registration, or API key. |
| What does a subject path look like? | A path is a slash-separated hierarchy like BE/BE0101 for national accounts. Leave it empty to start from the root and browse all available subjects. |
| Can I filter by specific variables or years? | This Actor collects full datasets as published. To filter by specific variable values or time periods, you would process the returned data rows in your own pipeline. |
| How much data can I collect in one run? | You set the maximum number of datasets with the maxItems parameter, up to one million. The actual volume depends on how many datasets exist under your chosen path. |
| Is the metadata in Swedish or English? | Variable names, value labels, and dataset titles are returned in Swedish as published by SCB. Some subject areas may include English translations where SCB provides them. |
| What export formats are supported? | You can export your results to CSV, JSON, Excel, or XML directly from the Apify platform. |
| Can I schedule this to run automatically? | Yes. You can set up a scheduled run in Apify to collect the latest datasets daily, weekly, or monthly. |
| Does this cover all SCB statistics? | It covers all datasets published through SCB's PxWeb Statistical Database, which includes the vast majority of official Swedish statistics. |

### Related actors

Browse the full [ParseForge collection](https://apify.com/parseforge?fpr=vmoqkp) for more scrapers.

🆘 **Need help?** Email parseforge@protonmail.com with your run ID, your input, and what you expected.

⚠️ **Disclaimer.** This Actor is unofficial and is not affiliated with, endorsed by, or sponsored by Statistiska centralbyrån. It collects only publicly available data. You are responsible for using the collected data in compliance with the source's terms of service and applicable data-protection laws, including GDPR, CCPA, and PIPL. Do not use it to collect personal data unlawfully.

# Actor input Schema

## `maxItems` (type: `integer`):

How many datasets to collect per run.

## `path` (type: `string`):

Sub-path within SCB SSD (e.g. BE/BE0101). Empty = root.

## Actor input object example

```json
{
  "maxItems": 10
}
```

# 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 = {
    "maxItems": 10
};

// Run the Actor and wait for it to finish
const run = await client.actor("parseforge/scb-sweden-pxweb-scraper").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 = { "maxItems": 10 }

# Run the Actor and wait for it to finish
run = client.actor("parseforge/scb-sweden-pxweb-scraper").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 '{
  "maxItems": 10
}' |
apify call parseforge/scb-sweden-pxweb-scraper --silent --output-dataset

```

## MCP server setup

```json
{
    "mcpServers": {
        "apify": {
            "type": "http",
            "url": "https://mcp.apify.com/?tools=fetch-actor-details,parseforge/scb-sweden-pxweb-scraper"
        }
    }
}

```

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/vgZ06EPBtRKPcRStD/builds/JHffCoxJPFFXUhLbU/openapi.json
