Count Tweets on X (2026): By User, Date or Hashtag
An account's total, its posts per day in any date range, or a hashtag's volume: three ways to count tweets, with real @NASA and #JWST counts.
Tarun Khatri
Published · Updated · 7 min read · 日本語で読む
To count tweets, check the post count on a profile for the total, or search one date range and count the results by day.
This guide covers the three counts people mean on X (Twitter): an account's total, its posts per day, and a hashtag's volume. We ran each one on 5 November 2026 through Weir, the API we run.
Paste this into Claude or ChatGPT with Weir connected:
Count how many posts @NASA made each day last week, without replies.
Use UTC days, and tell me how many were reposts.
- Read the totalThe profile, or statusesCount by API.
- Count a date rangeSearch with since and until.
- Search a hashtagCheck the volume, then count.
- Ask your agentOne prompt does the work.
Step 1: See how many tweets someone has
Every X profile shows a post count: the account's total since it joined. Reading it is free.
By API, the same number is statusesCount in Weir's profile lookup. This cURL is from our docs:
curl --request GET \
--url 'https://api.weirapp.io/v1/x/users/NASA' \
--header "Authorization: Bearer $WEIR_API_KEY"
Our call on 5 November 2026 cost 3 credits. Trimmed:
{
"username": "NASA",
"statusesCount": 74495,
"createdAt": "2007-12-19T20:20:32.000Z"
}
No code? Our free Twitter account age checker doubles as a tweet count checker. After a free sign-in, it shows the exact total and the daily average: 10.8 for @NASA.
X's API reference defines this total as the "Number of Posts (including Reposts) created by this User." Replies are posts too: X's Help Center lists them as a type of post.
Don't subtract two totals to count a window. Weir can return a profile it read hours earlier: on 5 November, @elonmusk's total stayed put for an hour in which search found 10 new posts.
Step 2: Count tweets by user in a date range
Search one account's posts between two exact times, then count them by day.
Weir's search takes fromUsers, since and until. The times are exact, and until is exclusive, so a UTC day runs midnight to midnight. X's own since: and until: operators take whole days, as our guide to searching tweets by date explains.
Save this in count_tweets.py. It needs only Python's standard library and a WEIR_API_KEY variable:
import collections, json, os, time, urllib.request
def count_by_day(body, max_pages=20):
posts, cursor = {}, None
for _ in range(max_pages): # 1 credit per page + 1 per post
data = json.dumps({**body, "cursor": cursor} if cursor else body).encode()
req = urllib.request.Request("https://api.weirapp.io/v1/x/search", data=data, headers={
"Authorization": "Bearer " + os.environ["WEIR_API_KEY"], "Content-Type": "application/json"})
page = json.load(urllib.request.urlopen(req, timeout=60))
posts.update({p["id"]: p["createdAt"][:10] for p in page["data"]}) # dedupe by id
cursor = page["meta"]["nextCursor"]
if not cursor:
break
time.sleep(4) # stay under the free tier's 30 requests a minute
return sorted(collections.Counter(posts.values()).items())
Add this call to count @NASA's week, without replies:
week = {"fromUsers": ["NASA"], "query": "-filter:replies", "limit": 100,
"since": "2026-10-29T00:00:00Z", "until": "2026-11-05T00:00:00Z"}
for day, count in count_by_day(week):
print(day, count)
We ran it on 5 November 2026. It made 3 calls and printed:
2026-10-29 4
2026-10-30 6
2026-10-31 4
2026-11-02 3
2026-11-03 3
2026-11-04 2
That's 22 posts for 25 credits. A day with no posts doesn't print: NASA posted nothing on 1 November.
Why not use the timeline? Weir's timeline endpoint returns only recent posts: for @elonmusk on 5 November 2026, it stopped after 848, about 18 days back. Search with since and until goes further.
Search counts fairly, too. On 5 November we counted @elonmusk's posts for 1 and 2 November both ways, and both gave 55. Our post on how often Elon Musk tweets runs this count over 30 days: 1,967 posts.
Step 3: Count tweets with a hashtag
A tweet counter by hashtag works like one by user: search the tag over a window and count. Weir's hashtags field takes up to 10 tags, and a post counts once if it has any of them.
Check the volume first, because a busy tag can cost thousands of credits. Ask for 5 posts and see how much time they span. Our first #JWST call returned 2 posts across 10 hours of 4 November, for 3 credits.
We then counted the week, with a page cap as a budget:
tag = {"hashtags": ["JWST"], "limit": 100,
"since": "2026-10-29T00:00:00Z", "until": "2026-11-05T00:00:00Z"}
days = count_by_day(tag, max_pages=4)
print(sum(n for _, n in days), "posts")
for day, count in days:
print(day, count)
It printed:
59 posts
2026-10-29 9
2026-10-30 13
2026-10-31 10
2026-11-01 10
2026-11-02 7
2026-11-03 8
2026-11-04 2
With about 20 posts a page, max_pages=4 capped the bill near 84 credits. It took 63, about 1.3 US cents. The last call came back empty with no cursor, so the count was complete.
Search isn't a full archive, though. X's Help Center says posts over a week old "may fail to display in timelines or search because of indexing capacity restrictions." Treat a count as a floor, and see why X search misses posts.
Our Twitter hashtag tracker guide adds hourly counts and daily alerts.
Step 4: Ask Claude or ChatGPT to count for you
Connect Weir once, then ask in plain words. Add https://api.weirapp.io/mcp as a custom connector, as our Claude and ChatGPT setup page shows.
We ran the prompt from the top in Claude Code, with Weir connected, on 5 November 2026. Claude read "last week" as the seven full UTC days before today, made 3 search_x calls for 25 credits, and answered:
@NASA, 29 Oct to 4 Nov 2026 (UTC), without replies: 22 posts.
Oct 29: 4 | Oct 30: 6 | Oct 31: 4 | Nov 1: 0 | Nov 2: 3 | Nov 3: 3 | Nov 4: 2
12 of the 22 were reposts.
Same counts, same cost as the script.
What does it cost to count tweets?
Weir bills 1 credit per post returned, plus 1 per call. Failed calls are free.
At the $5 pack's 25,000 credits, Elon's month cost about $0.42. The 5,000 free credits each month cover all three counts twice over.
X's own API counts without fetching posts. Its docs list recent counts for the last 7 days, open to all developers, and full-archive counts back to 2006 for pay-per-use and Enterprise customers. Both return a count per minute, hour or day.
X's pricing page lists $0.005 a request for recent counts and $0.010 for full-archive counts, as of November 2026. One full-archive response covers 31 days, so a month of daily counts is one request.
Pick by what you need:
| You need | Use | Cost |
|---|---|---|
| One account's total | Its profile on X | Free |
| Totals for many accounts | Weir profile lookup | 3 credits each |
| Daily counts, with posts | Weir search | 1 credit a post |
| Volume of a busy tag | X counts endpoint | From $0.005 a request |
Price a bigger job with the X API cost calculator.
Why does a Twitter post count look wrong?
- It counts reposts and replies. The Posts tab hides replies, so the number looks high.
- Mass deletes knock it out. X says it "may not match the true number of posts" afterward.
- The tabs stop early. X lists 800 recent posts on Posts, and 3,200 on Posts & replies.
- Your days differ from ours. We count UTC days; add your offset, like
-05:00.
When not to use Weir
- Volume is all you want. X's counts endpoints answer a month in one request.
- Deleted posts must count. Search finds only posts that are still up.
- Your project needs first-party data. Weir isn't affiliated with X, so access can change.
We run Weir, so weigh our view knowing that. It reads public data only, and X's terms still apply to how you use it. This isn't legal advice.
FAQ
How many tweets do I have?
Your profile's post count is your total, reposts and replies included. After mass deletes it can run high, X says. Our free account age checker shows the exact figure and your daily average.
How do I count tweets by user for one day?
Search from:username with since: and until: on X, then count the results by hand. For exact hours and a printed total, run the Step 2 script for that one day.
What is the total tweet count for a hashtag?
Count the posts in a date window, after checking the volume with a small limit. #JWST had 59 posts in the week to 4 November 2026. For volume alone, X's counts endpoints cost $0.005 or $0.010 a request.
Does the tweet count include retweets and replies?
Yes. X's API reference counts reposts in a user's post total, and X's Help Center lists replies as a type of post. So the profile number runs higher than the Posts tab suggests.
Sources
Checked 5 November 2026; help pages via Wayback, dated:
- X API, user lookup reference: https://docs.x.com/x-api/users/get-user-by-username
- X API post counts: https://docs.x.com/x-api/posts/counts/introduction
- X API pricing: https://docs.x.com/x-api/getting-started/pricing
- X Help Center, missing posts (6 October 2026): https://help.x.com/en/using-x/missing-posts
- X Help Center, types of posts (13 October 2026): https://help.x.com/en/using-x/types-of-posts
- Weir docs: https://docs.weirapp.io/examples/x-profile and https://docs.weirapp.io/billing
- Our calls through Weir, 5 November 2026