# Reddit Subreddit Scraper - Scrape Posts, No API Key (`logiover/reddit-subreddit-scraper`) Actor

Scrape subreddit posts with no Reddit API key or login. Reddit RSS feed scraper that exports posts to CSV/JSON for social listening and research.

- **URL**: https://apify.com/logiover/reddit-subreddit-scraper.md
- **Developed by:** [Logiover](https://apify.com/logiover) (community)
- **Categories:** Social media, Marketing
- **Stats:** 18 total users, 1 monthly users, 100.0% runs succeeded, 0 bookmarks
- **User rating**: No ratings yet

## Pricing

from $3.50 / 1,000 search 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/platform/actors/running/actors-in-store#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

## Reddit Subreddit Scraper — Posts, Titles & Authors (No API Key)

![Apify Actor](https://img.shields.io/badge/Apify-Actor-00A67E?logo=apify\&logoColor=white) ![No API key](https://img.shields.io/badge/No%20API%20key-required-2ea44f) ![Pay per result](https://img.shields.io/badge/Pricing-Pay%20per%20result-1C7ED6) ![Social Media](https://img.shields.io/badge/Category-Social%20Media-8B5CF6) ![Export](https://img.shields.io/badge/Export-JSON%20%7C%20CSV%20%7C%20Excel-F59E0B)

Scrape posts from **any subreddit on Reddit** — one or many at once — without a login or API key. Pull the newest posts with **title, author, post URL, permalink, self-text and timestamps** as clean structured rows for social listening, brand monitoring, lead generation and research. Reads Reddit's **public RSS/Atom feeds over a residential proxy**, so you get reliable anonymous access with no Reddit account, no OAuth and no client secret. **Fast, no browser, no API key, no login.**

> ### 🏆 Why this Reddit subreddit scraper?
>
> **Multiple subreddits per run** · newest posts with title, author, permalink & self-text · direct HTTP + RSS parsing (no browser, no OAuth) · residential-proxy ready · export to JSON / CSV / Excel. The anonymous **Reddit API alternative** for social listening, community monitoring and NLP corpora.

***

### ✨ What this Actor does / Key features

- 📰 **Any subreddit, many at once** — pass a list of subreddit names (with or without the `r/` prefix) and scrape them all in one run.
- 🔀 **Flexible sorting** — choose `new`, `hot`, `top` or `rising` post order.
- ⏱️ **Time filter** — narrow `top` results to the last `hour`, `day`, `week`, `month`, `year` or `all` time.
- 🧾 **Clean post fields** — post ID, title, author, link/target URL, Reddit permalink, self-text snippet and ISO 8601 timestamps.
- 🎯 **Per-subreddit cap** — set max posts per subreddit to control run size.
- ⚡ **Direct HTTP + RSS extraction** — parses Reddit's public RSS/Atom feeds; no browser, no DOM walking, no OAuth token, no client secret.
- 🛡️ **Anonymous by design** — reads the logged-out feed over a **residential proxy** (Reddit blocks datacenter IPs), so no Reddit login is needed.
- 📤 **Export anywhere** — download as CSV, JSON, Excel, HTML, XML or JSONL, or pull it live via the Apify API and webhooks.

### 🚀 Quick start (3 steps)

1. **Configure** — add one or more subreddit names to **Subreddits** (e.g. `startups`, `Entrepreneur`, `cryptocurrency`), pick a **Sort** order and optionally a **Time Filter** and **Max Posts per Subreddit**.
2. **Run** — click **Start**. The Actor reads each subreddit's RSS feed and streams posts into your dataset.
3. **Get your data** — open the **Output** tab and export to **JSON, CSV, Excel, XML or JSONL**, or pull it via the Apify API.

### 📥 Input

Give the Actor at least one subreddit name. Everything else is optional.

#### Example — newest posts across startup & SaaS subs (social listening)

```json
{
  "subreddits": ["startups", "Entrepreneur", "SaaS"],
  "sort": "new",
  "maxPostsPerSub": 25
}
```

#### Example — top posts of the week in a niche community

```json
{
  "subreddits": ["cryptocurrency"],
  "sort": "top",
  "timeFilter": "week",
  "maxPostsPerSub": 25
}
```

#### Example — monitor demand subs for lead generation

```json
{
  "subreddits": ["forhire", "slavelabour", "jobbit"],
  "sort": "new",
  "maxPostsPerSub": 25
}
```

| Field | Type | Description |
|-------|------|-------------|
| `subreddits` | array | Subreddit names to scrape, e.g. `startups`, `forhire`, `cryptocurrency`. The `r/` prefix is optional. **Required.** |
| `sort` | string | Post sort order: `new`, `hot`, `top` or `rising`. |
| `timeFilter` | string | Time window applied to `top` sort: `hour`, `day`, `week`, `month`, `year` or `all`. |
| `maxPostsPerSub` | integer | Max posts per subreddit. Reddit's logged-out feed returns at most ~25 most-recent posts per subreddit with no pagination, so values above 25 have no extra effect. |
| `proxyConfiguration` | object | Apify Proxy settings. Reddit blocks datacenter IPs, so residential is used by default — leave as-is unless you have a reason to change it. |

> **Finding a subreddit name:** it's the part after `reddit.com/r/` in the URL — e.g. for `reddit.com/r/startups` the name is `startups`. Add several names to scale volume across communities in a single run.

### 📤 Output

One row per post — exportable to JSON, CSV, Excel, XML or JSONL. Here is a real sample record:

```json
{
  "postId": "1dxk2ab",
  "subreddit": "startups",
  "title": "How we got our first 100 paying customers in 6 weeks",
  "author": "founder_jane",
  "url": "https://blog.example.com/first-100-customers",
  "permalink": "https://www.reddit.com/r/startups/comments/1dxk2ab/how_we_got_our_first_100_paying_customers/",
  "selftext": "Sharing the exact playbook we used — cold outreach, a tight ICP, and one channel done well…",
  "createdAt": "2026-07-06T09:14:00Z",
  "scrapedAt": "2026-07-06T12:00:00Z"
}
```

<details>
<summary><b>📋 Full field reference (click to expand)</b></summary>

| Field | Description |
|-------|-------------|
| `postId` | Reddit post ID |
| `subreddit` | Subreddit the post belongs to |
| `title` | Post title |
| `author` | Username of the post author |
| `url` | URL the post points to (link target or the Reddit post URL) |
| `permalink` | Link to the post on Reddit |
| `selftext` | Body-text snippet of self/text posts (when present in the feed) |
| `createdAt` | ISO 8601 timestamp the post was created |
| `scrapedAt` | ISO 8601 timestamp of the scrape |

</details>

> **Note:** Reddit's public RSS feeds do **not** expose vote score, upvote ratio, comment count, flair or NSFW flags, so this scraper does not return those metrics. For score/comment counts and deep history, use the [Reddit Historical Archive Scraper](https://apify.com/logiover/reddit-historical-archive-scraper) instead.

### 💡 Use cases

- **Social listening** — track what a niche community is posting about in near real time across `r/startups`, `r/SaaS`, `r/marketing` and any other subreddit.
- **Brand & competitor monitoring** — schedule the scraper hourly or daily and catch new posts mentioning your product, competitor or category.
- **Lead generation** — watch demand subs like `r/forhire`, `r/slavelabour` or industry help subreddits and surface fresh posts the moment they appear.
- **Content & trend discovery** — feed the newest titles from the subs your audience lives in into your newsletter, podcast or content backlog.
- **Research & NLP corpora** — collect topic-specific Reddit text on a schedule to build domain datasets for analysis or fine-tuning.

### 👥 Who uses it

Social-media & community managers · brand and competitor monitoring teams · growth marketers & lead-gen agencies · content creators and newsletter writers · researchers and data scientists building Reddit text corpora.

### 💰 Pricing

This Actor runs on a simple **pay-per-result** model — you pay for the posts you extract, with no separate Apify platform fees to calculate. Try it on the **free tier** first, then scale up. See the **Pricing** tab on this page for the current rate.

### ❓ Frequently Asked Questions

**Is it legal to scrape Reddit?**
This Actor collects only publicly available posts from Reddit's own public RSS/Atom feeds — no login or circumvention involved. You are responsible for using the data in compliance with Reddit's terms and applicable laws such as GDPR when handling usernames.

**Does Reddit have a public API / is this an API alternative?**
Reddit's old logged-out `.json` listing API has been blocked, and its official API now requires OAuth credentials. This Actor instead reads Reddit's public RSS/Atom feeds anonymously, making it a practical **Reddit API alternative** for pulling public subreddit posts with no key, no OAuth and no client secret.

**Do I need a Reddit account or API key?**
No. The scraper reads Reddit's public RSS feeds anonymously over a residential proxy — no Reddit login, no OAuth, no API key and no client secret. Only an Apify account is needed.

**Do I need a proxy?**
Reddit blocks datacenter IPs, so the Actor uses a **residential** Apify Proxy by default. Leave the proxy setting as-is unless you have a specific reason to change it.

**How much data can I get?**
Reddit's logged-out RSS feed returns at most ~25 of the most recent posts per subreddit and has no pagination, so roughly 25 posts per subreddit per run is the ceiling. Scrape many subreddits in one run to scale volume, and re-run on a schedule to keep collecting new posts over time.

**Why don't I get score, comment count or upvote ratio?**
Those values only existed on Reddit's old `.json` listing API, which is blocked for logged-out access. The RSS feed this scraper uses does not include them. Use the historical archive scraper if you need vote and comment metrics.

#### Is this a Reddit RSS feed scraper?

Yes. Under the hood it parses Reddit's logged-out RSS/Atom feeds, which is why it stays anonymous and needs no API credentials. That also sets the ~25-posts-per-subreddit ceiling described above.

#### Can I scrape Reddit without an API or login?

Yes. No Reddit account, login, OAuth or client secret is required — only an Apify account. The Actor reads Reddit's public RSS feeds over a residential proxy and returns each post as a clean row.

#### How do I export Reddit posts to CSV or JSON?

Run the scraper, then download the dataset as CSV, JSON, Excel, HTML, XML or JSONL, or pull it via the Apify API. Each post is one clean row, ready as a Reddit posts dataset for analysis, Sheets, Slack, Notion or your CRM.

#### How do I scrape the newest posts from a subreddit?

Add subreddit names to `subreddits` and set `sort` to `new`. The scraper reads Reddit's public RSS feed and returns the latest posts with title, author, URL and permalink.

#### How do I monitor multiple subreddits for lead generation?

List several demand subreddits (like `forhire` or your niche help subs) and schedule the scraper to catch fresh posts the moment they appear, exported to CSV or JSON.

### 🔗 More social & discussion scrapers by logiover

Building a cross-platform social dataset? Pair this with the rest of the discussion & social suite:

| Platform | Actor |
|---|---|
| 👽 Reddit | [Reddit Search Scraper](https://apify.com/logiover/reddit-search-scraper) · [Reddit Historical Archive Scraper](https://apify.com/logiover/reddit-historical-archive-scraper) |
| 💬 Hacker News | [Hacker News Search Scraper](https://apify.com/logiover/hacker-news-search-scraper) |
| ❓ Stack Exchange | [Stack Exchange Questions Scraper](https://apify.com/logiover/stack-exchange-questions-scraper) |
| 🚀 Product Hunt | [Product Hunt Daily Launches Scraper](https://apify.com/logiover/product-hunt-daily-launches-scraper) |
| ✍️ Dev.to | [Dev.to Articles Scraper](https://apify.com/logiover/devto-articles-scraper) |
| 📰 Substack | [Substack Newsletter Scraper](https://apify.com/logiover/substack-newsletter-scraper) |
| 🧵 Threads | [Threads Scraper](https://apify.com/logiover/threads-scraper) |
| 🐦 X / Twitter | [X Tweet Scraper](https://apify.com/logiover/x-tweet-scraper) |
| 📌 Pinterest | [Pinterest Scraper](https://apify.com/logiover/pinterest-scraper) |
| 🎮 Steam | [Steam Game Reviews Scraper](https://apify.com/logiover/steam-game-reviews-scraper) |
| ▶️ YouTube | [YouTube Search Scraper](https://apify.com/logiover/youtube-search-scraper) |

👉 Browse all **[logiover scrapers on Apify Store](https://apify.com/logiover)** — 180+ actors across real estate, jobs, crypto, social media & B2B data.

### ⏰ Scheduling & integration

Schedule this Actor on Apify to keep collecting fresh subreddit posts hourly, daily or weekly — ideal for ongoing social listening and brand monitoring. Export results to JSON, CSV or Excel, sync to Google Sheets, or push to Slack, Notion, your database and webhooks through the Apify API. Connect it to **Make, n8n or Zapier** to build automated monitoring and alerting pipelines.

### ⭐ Support & feedback

Found a bug or need an extra field? Open an issue on the **Issues** tab — response is usually fast. If this Actor saves you time, a **★★★★★ review** on the Store page genuinely helps and is hugely appreciated. 🙏

### ⚖️ Legal

This Actor extracts only publicly available data from Reddit's own public RSS/Atom feeds and is intended for legitimate research, analytics and monitoring use. You are responsible for complying with Reddit's terms of service, GDPR and any applicable local laws.

***

### 📝 Changelog

#### 2026-07-06

- ✨ README overhaul: keyword-rich intro, ready-to-run example scenarios, real output sample with a full field reference, discussion & social suite links, and expanded high-intent FAQ.

#### 2026-07-01

- Maintenance pass: re-verified end-to-end on live data and confirmed successful runs within the 5-minute quality window on the default input.
- Sharpened Store metadata (SEO title & description) and expanded the FAQ with high-intent, long-tail questions for easier discovery in Google and Apify Store search.
- Added ready-to-run example tasks that cover common real-world use cases.

#### 2026-06-15

- Reliability pass: re-verified end-to-end on live data with real-world inputs. Routine maintenance build.

#### 2026-06-07

- Docs: added coverage for scraping Reddit without an API key, exporting Reddit posts to CSV/JSON, and the RSS feed scraper as a Reddit API alternative.

#### 2026-06-05

- SEO and documentation refresh; README and metadata corrected to accurately describe the RSS-based transport and the fields actually returned.
- Reliability fix: results are no longer dropped by strict output validation — runs complete cleanly even at high volume.

# Actor input Schema

## `subreddits` (type: `array`):

Subreddit names to scrape, e.g. 'startups', 'forhire', 'cryptocurrency'. With or without the 'r/' prefix. Leave empty to browse r/popular (Reddit's cross-subreddit front page).

## `sort` (type: `string`):

Post sort order for each subreddit feed.

## `timeFilter` (type: `string`):

Time window (only meaningful with the 'Top' sort).

## `maxPostsPerSub` (type: `integer`):

Maximum posts to collect per subreddit. Reddit's logged-out feed returns at most ~25 most-recent posts per subreddit and has no pagination, so values above 25 have no extra effect.

## `proxyConfiguration` (type: `object`):

Reddit blocks datacenter IPs, so a residential proxy is used by default. Leave as-is unless you have a reason to change it.

## Actor input object example

```json
{
  "subreddits": [
    "startups"
  ],
  "sort": "new",
  "timeFilter": "day",
  "maxPostsPerSub": 25,
  "proxyConfiguration": {
    "useApifyProxy": true,
    "apifyProxyGroups": [
      "RESIDENTIAL"
    ]
  }
}
```

# Actor output Schema

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

All records extracted by this run. Open the Dataset tab to browse, filter, and export as CSV, JSON, or Excel.

# 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 = {
    "subreddits": [
        "startups"
    ],
    "maxPostsPerSub": 25
};

// Run the Actor and wait for it to finish
const run = await client.actor("logiover/reddit-subreddit-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 = {
    "subreddits": ["startups"],
    "maxPostsPerSub": 25,
}

# Run the Actor and wait for it to finish
run = client.actor("logiover/reddit-subreddit-scraper").call(run_input=run_input)

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

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

```

## CLI example

```bash
echo '{
  "subreddits": [
    "startups"
  ],
  "maxPostsPerSub": 25
}' |
apify call logiover/reddit-subreddit-scraper --silent --output-dataset

```

## MCP server setup

```json
{
    "mcpServers": {
        "apify": {
            "command": "npx",
            "args": [
                "mcp-remote",
                "https://mcp.apify.com/?tools=logiover/reddit-subreddit-scraper",
                "--header",
                "Authorization: Bearer <YOUR_API_TOKEN>"
            ]
        }
    }
}

```

## OpenAPI specification

Download the OpenAPI definition: https://api.apify.com/v2/acts/0grS2OAGUALxE7iTa/builds/EWWVCb3T5BbjzwYtW/openapi.json
