> ## Documentation Index
> Fetch the complete documentation index at: https://docs.adriel.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Data reference

> Metrics, breakdowns, refresh cadence, and limits for the Reddit Public data source in Adriel.

## Introduction

Reddit Public pulls publicly visible Reddit data — user profiles, subreddit metadata and top posts, and live thread engagement — for the Reddit targets a customer designates for monitoring. The customer connects a Reddit account via OAuth so the connector can call the authenticated Reddit API at `oauth.reddit.com`; the targets being monitored do not need to belong to that account.

The connector is intended for community monitoring, brand-mention tracking, and live event tracking on individual threads. Three distinct asset types — `username`, `subreddit`, and `thread` — give a data source access to profile-level, community-level, and post-level data respectively.

As a public-data connector, engagement metrics and audience breakdowns are standardized so widgets can aggregate alongside owned-account sources without additional configuration.

To connect this data source, see [How to connect Reddit Public to Adriel](/data-sources/o-z/reddit-public/how-to-connect).

## Data refresh strategy

### Architecture data

Each data source is configured with one asset type (`username`, `subreddit`, or `thread`) and one target value. The configuration determines which Reddit endpoints are queried for that data source. The asset type is set at creation and cannot be changed; switching asset type requires creating a new data source.

### Reports data

**On demand.** This connector is updated on demand: fresh data is fetched when the dashboard is visited, with no intermediate result cache. Every widget render issues live calls to Reddit, so reported counts are always current as of the dashboard query — particularly useful for live thread tracking — but dashboard load time is bounded by Reddit's API response time.

OAuth tokens are cached in memory for 20 minutes before a refresh is triggered; failed refreshes surface immediately rather than retrying silently.

## Architecture levels

Reddit Public has no account or campaign hierarchy. Each data source tracks exactly one asset — a Reddit username, subreddit, or thread — chosen at creation. The asset type determines which Reddit data the data source can expose. To monitor more than one target, the customer creates additional data sources.

| Asset type  | Target value                   | What it exposes                                                     |
| ----------- | ------------------------------ | ------------------------------------------------------------------- |
| `username`  | Reddit username (without `u/`) | Public profile statistics plus recent submission history.           |
| `subreddit` | Subreddit slug (without `r/`)  | Subscriber count, top posts, and recent activity for the community. |
| `thread`    | Thread (submission) ID         | Live score and comment data for a single thread.                    |

## Metrics

<Note>
  **How to read the columns**
  **Data type** uses this vocabulary: Number, Currency, Percentage, Ratio, Duration, Date, Text, URL, Array, Boolean.
  **API Key** in code style like `total_karma` is the literal Reddit API field name. *Italic text* describes how a value is produced when it doesn't map cleanly to a single API field.
</Note>

### Username-level

Available for data sources with the `username` asset type.

| Metric             | Description                                                   | Data type | API Key                      |
| ------------------ | ------------------------------------------------------------- | --------- | ---------------------------- |
| Total karma        | Combined comment and link karma score for the user.           | Number    | `total_karma`                |
| Comment karma      | Karma earned from comments.                                   | Number    | `comment_karma`              |
| Link karma         | Karma earned from submissions.                                | Number    | `link_karma`                 |
| Account age        | Time elapsed since the account was created.                   | Duration  | *derived from `created_utc`* |
| Recent submissions | Recent posts by the user with their score and comment counts. | Array     | `/user/{username}/submitted` |

### Subreddit-level

Available for data sources with the `subreddit` asset type.

| Metric           | Description                                              | Data type | API Key              |
| ---------------- | -------------------------------------------------------- | --------- | -------------------- |
| Subscriber count | Total members subscribed to the subreddit.               | Number    | `subscribers`        |
| Active users     | Members active in the subreddit at the time of the call. | Number    | `active_user_count`  |
| Top posts        | Highest-scoring posts within the queried time range.     | Array     | `/r/{subreddit}/top` |
| Post score       | Net upvote score for each top post.                      | Number    | `score`              |
| Comment activity | Comment counts on top posts.                             | Number    | `num_comments`       |

### Thread-level

Available for data sources with the `thread` asset type.

| Metric              | Description                                                                 | Data type | API Key                          |
| ------------------- | --------------------------------------------------------------------------- | --------- | -------------------------------- |
| Upvotes             | Net score for the thread.                                                   | Number    | `score`                          |
| Upvote ratio        | Proportion of votes that are upvotes.                                       | Ratio     | `upvote_ratio`                   |
| Comment count       | Total comments on the thread.                                               | Number    | `num_comments`                   |
| Awards              | Awards granted to the thread.                                               | Number    | `total_awards_received`          |
| Engagement velocity | Score growth rate, derived across successive live polls of the same thread. | Number    | *derived from `score` over time* |

## Breakdowns

### Endpoint

Each breakdown corresponds to a Reddit API endpoint. When a breakdown is selected, the connector calls only the matching endpoint(s); results from all selected endpoints are merged into a single row list. The endpoints offered depend on the asset type:

* `username`: `user_about`, `user_comments`, `user_overview`, `user_submitted`
* `subreddit`: `subreddit_about`
* `thread`: `live_thread`, `live_thread_about`

| Breakdown | Description                               | API Key         |
| --------- | ----------------------------------------- | --------------- |
| Endpoint  | Reddit endpoint the row was sourced from. | `endpoint.name` |

### Asset and target

| Breakdown        | Description                                                        | API Key                             |
| ---------------- | ------------------------------------------------------------------ | ----------------------------------- |
| Asset type       | Whether the row belongs to a username, subreddit, or thread asset. | `type`                              |
| Target           | The tracked username, subreddit slug, or thread ID.                | `username` / `subreddit` / `thread` |
| Post             | Individual post in a subreddit or username feed.                   | `post_id`                           |
| Publication date | Date the post or thread was created.                               | *derived from `created_utc`*        |

## Limitations

* **Live, uncached responses** — no result cache sits between the dashboard and Reddit. Dashboard load time is bounded by Reddit's response latency, and a Reddit outage causes immediate widget failures rather than degraded cached output.
* **Sampling on high-volume subreddits** — subreddit endpoints return a paginated slice of recent or top content rather than an exhaustive list. For very high-volume subreddits, comment-activity and post counts reflect the sampled window the API returns, not a full census of the time range.
* **One asset type per data source** — the asset type is chosen at creation and cannot be changed. Tracking the same target across multiple asset types — for example, a subreddit's overview plus a specific thread inside it — requires multiple data sources.
* **Private, banned, or deleted targets** — quarantined or banned subreddits, deleted users, and removed threads stop returning data. The widget renders no rows for the affected target until the situation changes; there is no cached fallback because the connector does not cache results.
* **Reddit rate limits apply per OAuth token** — Reddit enforces per-token request limits. Dashboards that render many Reddit Public widgets simultaneously can hit these limits, surfacing as partial data or transient errors. Spacing out widget loads or reducing widget count on a single dashboard mitigates the issue.

## API references

* [Reddit API documentation](https://www.reddit.com/dev/api/)
* [Reddit OAuth2 guide](https://github.com/reddit-archive/reddit/wiki/OAuth2)

## See also

* [How to connect Reddit Public to Adriel](/data-sources/o-z/reddit-public/how-to-connect) (paired how-to)
* [Reddit Ads data reference](/data-sources/o-z/reddit/data-reference) — for paid Reddit campaigns
