Twitterment

Guide 02 / 06

How to collect posts from X by hand for sentiment analysis

Search operators, copying tricks and a simple routine for building a sample of posts without scraping.

By the Twitterment Team · Updated · 4 min read

The checker on this site never talks to X. You bring the text. That keeps it simple and private, but it means the quality of your result depends on what you collect. A careless sample of the loudest replies gives a confident answer to the wrong question.

This guide covers finding the right posts with X search, copying them into one-post-per-line text, and cleaning that text before you paste it. Everything here is something a person does in a browser. There are no scripts, and that is deliberate: X's Terms of Service prohibit crawling or scraping without the company's written consent, and automated collection can get an account limited.

Decide what you are asking first

Write your question in one sentence before you search. "How did people react to our price change on Tuesday?" leads to a different search than "What do people say about our brand in general?" The first needs replies and quote posts from a narrow time window. The second needs a broader keyword search across weeks.

Note the date range, the keywords and the accounts that matter. You'll want them again when you repeat the check next month.

X has an Advanced Search form on the web version, reachable from the search results page through the options menu. It has fields for all of these words, an exact phrase, any of these words, words to exclude, hashtags, language, accounts the post is from, replies to an account, mentions, and a date range. Fill in what you need and X writes the query for you.

The form is the safest starting point because it only offers options X currently supports. After you run it, look at the query that appears in the search box. That is the same query written with operators, and you can edit it directly next time.

Operators worth knowing

You can type these straight into the search box. X does not document every one of them in its help pages, and behavior can change, so test a query and look at the results before relying on it.

You want Type
An exact phrase "battery life"
Either of two words refund OR chargeback
Leave a word out acme -hiring
Posts from one account from:acme
Replies to one account to:acme
Posts mentioning an account @acme
A date window since:2026-10-01 until:2026-10-08
One language lang:en
Only replies, or no replies filter:replies, -filter:replies
Posts with some traction min_faves:10, min_retweets:5

Combine them with spaces. to:acme since:2026-10-14 until:2026-10-16 lang:en gives you English replies to the account across two days. Adding -from:acme drops the account's own replies in the thread.

Switch between the Top and Latest tabs. Top is ranked by X and leans toward popular posts. Latest is closer to chronological and gives a fairer picture of ordinary reactions, though it includes more noise and spam.

Replies under a single post

For reaction to one announcement, open the post and scroll the replies. X ranks replies, and some are hidden behind a "show more replies" or "probable spam" prompt. Expand those if you want the full picture, and note in your write-up whether you did.

Quote posts are a separate stream. Open the post's quotes view to see them. People often say harsher or funnier things in a quote than in a reply, so a reply-only sample can make reaction look politer than it was.

Copying without a mess

The cleanest manual method is slow but reliable: open each post, select only the text, and paste it into a plain text editor on its own line. For a few dozen posts this takes a few minutes.

For longer threads, many people select a block of the page and paste it into a text editor, then clean it. That brings along names, handles, timestamps, counts and button labels. A few find-and-replace passes get rid of most of it, and the checker already ignores @handles and links. Do the cleanup in a plain text editor rather than a word processor, which may join lines or add smart formatting.

Keep a second copy with the post URLs if you might need to cite or recheck individual posts later. The checker only needs the text.

Clean the list before scoring

Go through the pasted lines once before you press the button:

  1. Put each post on one line. If a post has line breaks, join them.
  2. Remove your own account's posts and your team's.
  3. Delete exact duplicates and copy-paste spam. Ten identical replies are one voice, or a bot.
  4. Delete lines that are only a handle, a link or a single emoji unless the emoji is the point.
  5. Keep non-English posts in a separate list. The checker scores English only.

Then paste, score, and export the CSV. Write down the search query, the date and time you collected the posts, the tab you used, and how many you skipped. Without that note, next month's comparison will measure your collection habits as much as the mood.

When manual collection isn't enough

If you need thousands of posts a day, continuous monitoring or historical archives, hand copying stops being practical. The legitimate routes are X's own developer API, which has its own pricing and usage terms, or a commercial listening tool that licenses access. Read their terms before you sign up. Avoid browser extensions and scripts that promise to "export all replies" from the web interface; they usually rely on scraping and can put your account at risk.

Questions

Is it allowed to copy posts from X into a spreadsheet?
Reading public posts and copying a few hundred by hand for your own analysis is ordinary use of the site. X's terms forbid crawling or scraping the service without its written permission, so don't run scripts, browser bots or extensions that harvest posts automatically. If you need large volumes, look at X's official API and its terms instead.
How many posts do I need?
For a rough read on one conversation, 100 to 300 lines is usually enough to see whether reaction is mostly positive, mostly negative or split. Below about 50, a handful of posts can swing the percentages a lot. The guide on reading sentiment covers sample size in more detail.
Should I include my own replies?
No. Remove posts from your own account and your team's accounts before you score anything. They tend to be positive and they tell you nothing about how other people feel.

Twitterment is independent and not affiliated with X Corp. Features and search operators on X change from time to time; if something here doesn't match what you see, check X's own help pages.

Open the sentiment checker