Stocktwits Scraper avatar

Stocktwits Scraper

Pricing

from $0.90 / 1,000 message or symbols

Go to Apify Store
Stocktwits Scraper

Stocktwits Scraper

Scrape public Stocktwits ticker messages, user posts, trending messages, and trending symbols. Export sentiment, cashtags, mentions, media, author metrics, source URLs, and timestamps for market research.

Pricing

from $0.90 / 1,000 message or symbols

Rating

0.0

(0)

Developer

Maxime Dupré

Maxime Dupré

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

2 days ago

Last modified

Categories

Share

📈 Stocktwits scraper for market sentiment data

Stocktwits Scraper collects public ticker messages, user posts, trending messages, and trending symbols from Stocktwits. Use this Stocktwits scraper to export market sentiment, cashtags, author metrics, media links, price-target fields, source URLs, and scrape timestamps into an Apify dataset.

It is built for market researchers, analysts, trading dashboards, social listening workflows, content teams, and anyone tracking what retail traders are saying about stocks or crypto. You can run it from Apify Console, call it through the Apify API, schedule repeat runs, export CSV/JSON/Excel files, or connect finished datasets to webhooks and integrations.

For a useful first run, keep Stocktwits data set to Symbol messages, leave AAPL in Ticker symbols, and keep Message limit at 25. That gives you a practical ticker-message sample before you add more symbols, usernames, or trending modes.

✅ What this Stocktwits scraper does

  • Scrapes recent public Stocktwits messages for stock and crypto tickers such as AAPL, TSLA, NVDA, BTC.X, or ETH.X.
  • Scrapes recent public posts from Stocktwits usernames.
  • Scrapes the current market-wide trending message feed.
  • Scrapes ranked Stocktwits trending symbols.
  • Preserves Stocktwits source sentiment when a message is marked Bullish or Bearish.
  • Adds optional computed sentiment for every message body.
  • Exports cashtags, mentions, media metadata, conversation context, author metrics, price-target fields, source URLs, and scrape timestamps when Stocktwits exposes them.
  • Saves one dataset item per accepted public message or trending symbol.
  • Runs without a Stocktwits API key, login, cookies, or private account access.

The Actor is focused on public Stocktwits data for research and monitoring. It does not read private messages, perform account actions, send alerts by itself, or provide trading advice.

📦 Stocktwits data you can extract

Message rows include:

Data groupExample fields
Message identityrowType, targetType, target, messageId, messageUrl
Message contentbody, createdAt, sourceSentiment, computedSentiment
Market contextsymbols, cashtags, priceTarget, sourceTitle
Author dataauthor.username, author.name, author.followers, author.ideas, author.official
Conversation datamentions, media, conversation.parentMessageId, conversation.replies
TraceabilitysourceUrl, scrapedAt

Trending-symbol rows include rank, symbol, symbolDisplay, title, exchange, region, instrumentClass, logoUrl, watchlistCount, sentimentChange, volumeChange, sourceUrl, and scrapedAt.

Stocktwits may not expose every field for every message or symbol. Missing media, price targets, source sentiment, conversation fields, or symbol metrics are left out of that row.

🎯 Common use cases

  • Monitor Stocktwits sentiment for a watchlist of stocks or crypto assets.
  • Build retail-investor sentiment datasets for analysis, dashboards, or research.
  • Track ticker discussion around earnings, product launches, filings, or market events.
  • Export public user posts from Stocktwits accounts you follow.
  • Find trending symbols and then scrape their message streams in later scheduled runs.
  • Feed Stocktwits message text, timestamps, cashtags, and author metrics into BI tools, spreadsheets, databases, or AI workflows.

🚀 How to scrape Stocktwits

  1. Open the Input tab.
  2. Choose Stocktwits data:
    • Symbol messages for ticker streams.
    • User posts for public usernames.
    • Trending messages for the market-wide message feed.
    • Trending symbols for the ranked symbol list.
  3. Add Ticker symbols such as AAPL, TSLA, NVDA, BTC.X, or ETH.X when using symbol mode.
  4. Add Stocktwits usernames without @ when using user mode.
  5. Keep Message limit or Trending symbol limit small for your first run.
  6. Optional: enable Price targets only, keep Computed sentiment on, or enable Raw source payload for advanced API workflows.
  7. Start the Actor and open the dataset.

✍️ Input example

{
"mode": "symbol",
"symbols": ["AAPL", "BTC.X"],
"maxMessagesPerTarget": 25,
"onlyPriceTargets": false,
"includeComputedSentiment": true,
"includeRawSource": false
}

Use user mode with usernames, trending mode without targets, or trending-symbols mode with maxTrendingSymbols.

🧾 Output example

{
"rowType": "message",
"targetType": "symbol",
"target": "AAPL",
"messageId": 655441915,
"messageUrl": "https://stocktwits.com/example/message/655441915",
"body": "$AAPL watching the next move after market open",
"createdAt": "2026-06-04T17:40:56Z",
"sourceSentiment": "Bullish",
"computedSentiment": "neutral",
"symbols": ["AAPL"],
"cashtags": [
{
"symbol": "AAPL",
"title": "Apple Inc",
"exchange": "NASDAQ",
"watchlistCount": 980580,
"currentPrice": 311.76
}
],
"mentions": [],
"author": {
"username": "example_user",
"followers": 550,
"ideas": 49511,
"official": false
},
"sourceUrl": "https://api.stocktwits.com/api/2/streams/symbol/AAPL.json?limit=30",
"scrapedAt": "2026-06-04T17:42:06.663Z"
}

💳 Pricing

This Actor uses pay-per-event pricing. You are charged only for each public Stocktwits message or trending symbol saved to the dataset. Invalid inputs, empty targets, and source failures do not create dataset rows.

⚠️ Limits and caveats

  • Stocktwits source sentiment is user-provided, so many messages do not include a Bullish or Bearish label.
  • Computed sentiment is a lightweight convenience field for filtering and review. It is not financial advice.
  • The Actor collects currently accessible public Stocktwits data. It does not guarantee a full historical archive.
  • Usernames should be public Stocktwits profiles. Private, deleted, or unavailable content is not exported.
  • Crypto tickers usually need the Stocktwits .X suffix, such as BTC.X or ETH.X.
  • Broad runs can return many rows. Keep limits low until the output fits your workflow.

❓ FAQ

Do I need a Stocktwits API key?

No. The Actor collects public Stocktwits data and does not ask for a Stocktwits API key, login, cookies, or private account credentials.

Can I scrape crypto sentiment from Stocktwits?

Yes. Use Stocktwits crypto symbols such as BTC.X, ETH.X, or other .X tickers when they are available on Stocktwits.

What is the difference between source sentiment and computed sentiment?

sourceSentiment is the Bullish or Bearish label provided by Stocktwits users when it exists. computedSentiment is a simple positive, neutral, or negative label added from the message text so every message can be filtered consistently.

Can I collect only messages with price targets?

Yes. Enable Price targets only to save messages that include a Stocktwits price-target object.

Can I schedule Stocktwits monitoring?

Yes. Schedule the Actor on Apify and export each run through the dataset API, webhooks, or integrations. The Actor returns currently accessible public data for each run.

📝 Changelog

  • 0.0: Initial release.

🆘 Support

For issues, questions, or feature requests, file a ticket and I'll fix or implement it in less than 24h 🫡

🔗 Other actors

Made with ❤️ by Maxime Dupré