---
title: "Comments"
description: "Read the conversation under your mentions. Comments are items like posts; the ones that name your keyword are mentions too."
canonical: https://docs.mentio.dev/guides/comments
markdown: https://docs.mentio.dev/guides/comments.mdx
---

# Comments

Read the conversation under your mentions. Comments are items like posts; the ones that name your keyword are mentions too.

A mention is a post that names your keyword. The conversation under it usually does not: "How much does it cost?", "Does it support Threads?", "We had issues with it". Switch comments on for a keyword and Mentio reads that conversation for you.

## Posts, comments and mentions

Every piece of content Mentio stores is an item, a **post** or a **comment** (a comment answers a post or another comment). Two things follow:

* **A comment that names your keyword is a mention.** A reply found by search (a Hacker News comment, an X or Bluesky reply, a Stack Overflow answer) is one wherever it turns up. Inside a thread read for a keyword, a comment that names that keyword is a mention of it when it is among the newest `maxPerPost`, the ones you receive anyway; another keyword of yours that did not switch comments on never picks one up from a thread. It appears in `GET /v1/mentions` like any post, with `post.kind: "comment"`, the post it answers in `post.replyTo`, and `parentMentionId` when that post is itself one of your mentions. It is scored, alerted and exported like a post. Filter with `kind=post` or `kind=comment`.
* **The comments of a mention are its thread**, whether or not they name the keyword: `GET /v1/mentions/{id}/comments`, newest first. Each comment has its author, text, time, engagement, a light read of its sentiment and intent, and `mentionId` when it names one of your keywords (it is then a mention too).

```bash
curl https://api.mentio.dev/v1/mentions/mm_abc123/comments \
  -H "Authorization: Bearer $MENTIO_API_KEY"
```

## Switching it on

Comments are off by default, per keyword:

```bash
curl -X PATCH https://api.mentio.dev/v1/keywords/kw_abc123 \
  -H "Authorization: Bearer $MENTIO_API_KEY" -H "Content-Type: application/json" \
  -d '{ "comments": { "enabled": true, "maxPerPost": 20 } }'
```

From then on, every new mention of the keyword that is scored **relevant** has its thread read **several times, as long as conversations on its platform last**:

| Platform                     | Reads, by the post's age                |
| ---------------------------- | --------------------------------------- |
| Reddit, Hacker News, Bluesky | 30 minutes, 2 hours, 6 hours, 1 day     |
| Stack Overflow               | 1 hour, 6 hours, 1 day, 7 days          |
| GitHub, DEV                  | 2 hours, 1 day, 3 days, 7 days          |
| YouTube                      | 2 hours, 1 day, 3 days, 7 days, 30 days |

A read whose time has already passed is skipped (a post first found a week in is read once, then at the ages still ahead). Each read brings only comments you have not received yet, newest first, and a thread brings at most `maxPerPost` comments in all (20 by default, up to 100), so reading it again never costs more than reading it once. A busy YouTube video can fill 20 in its first day; raise `maxPerPost` to follow its long tail. Mentions found by a keyword's first 30-day look-back do not fetch threads, so switching comments on never reads a month of history at once.

Threads are read on Hacker News, Bluesky, GitHub, Stack Overflow, DEV, YouTube and Reddit. Comments start with a workspace's first top-up: the welcome credit is for mentions. A keyword that is paused (by you, by the balance, as mostly noise, or at its cap) when its thread comes due receives nothing, and a thread nobody can receive any more is not read. On the dashboard the switch is in the keyword's drawer, and the thread shows under the post in the mention's drawer.

## What it costs

A comment that says nothing (fewer than three words once links, @handles and emoji are gone: "lol", "+1", "first", "🔥🔥") is dropped when the thread is read: never delivered, never billed. Each comment you receive is **$0.008**, on its own line of the bill (`debit_comments` in the [ledger](/billing), `billableComments` and `commentCents` in the usage breakdown and in `keywords.stats.cost`). A comment is billed **once per workspace**: one that arrives in a thread and also names your keyword, or that two of your keywords match, is one comment on the bill. `maxPerPost` is the ceiling on what one mention's thread can cost: at 20, $0.16, since a comment naming the keyword only counts among those newest 20. A thread is also never delivered past what your balance pays for.

The [monthly cap](/billing#capping-a-keywords-mentions) bounds a keyword's whole variable bill: mentions and the comments delivered under them count together toward it (`stats.thisMonth`). A thread that would cross the cap is cut at it, and the keyword pauses there until the month turns or the cap is raised.

Comments that name a keyword are matched like any post; replies and comments found by search (Hacker News comments, X and Bluesky replies, Stack Overflow answers) are comments too and bill on the comments line, at the same price as a mention.
