Skip to content

Competitor tracking on X and Reddit

Pull a competitor's recent tweets, page through their followers, and search Reddit and X for what people say about them. Store the results each week and you can see what changed.

The job

Competitors announce launches, price changes and hires on X. Their customers complain about them or compare them on Reddit. Watch both and you see what they ship and how people react to it.

It takes a few calls per competitor: their timeline, their follower list, their mentions and a Reddit search for their name. Save each run with its date so you can compare runs.

How it works

  1. Pull their timeline

    Fetch each competitor's recent tweets and keep the ones with the most engagement.

  2. Track their audience

    Page through their followers and store the count and new names each week.

  3. Read what people say

    Run a mentions search for each competitor's name across Reddit and X.

  4. Compare over time

    Store each run in a sheet or database. The Google Sheets guide shows one way.

Endpoints that do it

EndpointWhat it's forCredits
List user tweetsGET /v1/x/users/{handle}/tweetsA competitor's recent tweets with likes, replies and views.3 credits
List followersGET /v1/x/users/{handle}/followersTheir followers, about 20 per page.3 credits per page (20 rows by default)
Get a userGET /v1/x/users/{handle}Follower and following counts for a quick snapshot.3 credits
Find brand mentionsGET /v1/mentionsWhat people say about them on Reddit and X.up to 7 credits
Search postsGET /v1/reddit/searchReddit posts that name them.2 credits

Free tools for the same job

Try the job in a browser first. These tools call the same endpoints, and you don't need a key or any code.

A competitor's timeline

Recent tweets from one public account, with engagement counts on each.

curl "https://api.chatterapi.com/v1/x/users/levelsio/tweets" \
  -H "Authorization: Bearer $CHATTERAPI_KEY"
response, first 2 rows
{
  "data": [
    {
      "id": "2110066474513793361",
      "text": "✨ 200,000+ users on my computer nostalgia project @pieter\n\nSometimes it takes a few years for things to take off, in this case about 2 years!\n\nKeep creating 💖 https://t.co/Na0LXnwAjW",
      "url": "https://x.com/levelsio/status/2110066474513793361",
      "createdAt": "2026-10-13T17:53:45.000Z",
      "lang": "en",
      "likes": 129,
      "retweets": 4,
      "replies": 37,
      "quotes": 0,
      "views": 15475,
      "bookmarks": 9,
      "isReply": false,
      "inReplyToId": null,
      "conversationId": "2110066474513793361",
      "isRetweet": false,
      "quotedTweetId": "2108957488410161442",
      "author": {
        "id": "1577241403",
        "handle": "levelsio",
        "name": "@levelsio",
        "bio": "💸https://t.co/sQ0aiU7v02\n📸https://t.co/lAyoqmSBRX $86K/m\n🎮https://t.co/tF49atJ396 $44K/m\n🏡https://t.co/1oqUgfD6CZ $23K/m\n👙@X $13K/m\n🌍https://t.co/UXK5AFqCaQ $7K/m\n🏩https://t.co/4p4dzTDVN6 $5K/m",
        "followers": 974778,
        "following": 3275,
        "tweets": null,
        "verified": false,
        "blueVerified": true,
        "canDm": false,
        "protected": null,
        "location": "📕My book $5K/m 👉",
        "url": null,
        "avatarUrl": "https://pbs.twimg.com/profile_images/2077111020305162240/PwddgOau_normal.jpg",
        "createdAt": "2013-07-08T09:31:59.000Z"
      },
      "media": [
        {
          "type": "photo",
          "url": "https://pbs.twimg.com/media/HUh2NAYWQAAP7ZK.jpg"
        }
      ]
    },
    {
      "id": "2110030627336540370",
      "text": "This is also interesting to think about\n\nRight now it still takes, let's say, 30 minutes to a few hours to build something usable with AI and then you still polish for days/weeks/months\n\nIf we assume this will keep getti…",
      "url": "https://x.com/levelsio/status/2110030627336540370",
      "createdAt": "2026-10-13T15:31:18.000Z",
      "lang": "en",
      "likes": 324,
      "retweets": 11,
      "replies": 112,
      "quotes": 10,
      "views": 38339,
      "bookmarks": 118,
      "isReply": false,
      "inReplyToId": null,
      "conversationId": "2110030627336540370",
      "isRetweet": false,
      "quotedTweetId": null,
      "author": {
        "id": "1577241403",
        "handle": "levelsio",
        "name": "@levelsio",
        "bio": "💸https://t.co/sQ0aiU7v02\n📸https://t.co/lAyoqmSBRX $86K/m\n🎮https://t.co/tF49atJ396 $44K/m\n🏡https://t.co/1oqUgfD6CZ $23K/m\n👙@X $13K/m\n🌍https://t.co/UXK5AFqCaQ $7K/m\n🏩https://t.co/4p4dzTDVN6 $5K/m",
        "followers": 974778,
        "following": 3275,
        "tweets": null,
        "verified": false,
        "blueVerified": true,
        "canDm": false,
        "protected": null,
        "location": "📕My book $5K/m 👉",
        "url": null,
        "avatarUrl": "https://pbs.twimg.com/profile_images/2077111020305162240/PwddgOau_normal.jpg",
        "createdAt": "2013-07-08T09:31:59.000Z"
      },
      "media": []
    }
  ],
  "page": {
    "nextCursor": "AdRo…",
    "hasMore": true
  }
}

Recorded from a live call on . Long text is shortened and the cursor is cut. A live key is charged 3 credits for this call. A test key returns this same sample for 0 credits.

What it won't do

  • ChatterAPI reads live Reddit and X. It does not return posts or comments that were deleted or removed.
  • There are no webhooks or streams yet. To watch for new items, call the endpoint on a schedule and keep the newest id you have seen.
  • Follower lists are paged, so a large account takes many calls. Count the pages before you pull a full list.

Questions

How much does a weekly check cost?
A timeline call costs 3 credits, a profile 3 and a mentions search up to 7. Checking five competitors a week comes to about 65 credits.
Can I see a competitor's private data?
No. Only public profiles, tweets and posts.
Can I track follower growth?
Yes. Store the follower count from the profile call each day and chart it.

Other use cases

Build it with one API key

Sign up and get 100 free credits. No card required.