← Back to Blog
Deletion2026-10-17·Digital Footprint Health Team

How to Bulk-Delete Tweets by Date Range (Clean Up 2018–2020 Posts)

X/Twitterdelete tweets by datebulk deletedata archiveprivacy cleanup

You want to wipe the tweets you posted between 2018 and 2020, but X's interface only lets you delete them one at a time. Halfway through, you give up. That's normal. Manually deleting a few hundred old tweets eats an entire afternoon just in scroll-loading.

Here's the good part: cleaning by date range is doable, and you don't have to click through every single post. Below are three methods that actually work, plus the mistakes that trip most people up.

Why delete by date instead of one by one

Old tweets tend to cluster in certain years. The stuff from around your 2019 job change, the emotional retweets during 2020, the things you'd never post now. You rarely look at them after that phase passes. Targeting a specific window is more efficient than nuking everything, and it lets you keep the parts you still care about.

There's a practical reason too: X only lets you delete the most recent ~3,200 tweets through the interface. Anything older is locked inside your archive file, where the UI can't reach it. So "delete by date" almost always means going through the archive. If you try to do it by hand, you'll hit the wall at 3,200 and the rest stays up.

Method 1: Download the archive and filter by year on your device

In X settings, request your "data archive." You get a ZIP, and inside it tweets.js or tweets.csv holds your entire tweet history with timestamps. The file includes the tweet text, the posted time, and often the media links.

An on-device privacy tool can parse that file, filter the tweets you want gone by year or exact date range, and produce a deletion list. The whole process runs on your computer; your credentials never leave it. You review the list, approve it, and the tool sends the delete requests through your own logged-in session.

StepWhat you doWatch out for
1Request and download your X archiveIt can take hours to a day to arrive
2Parse tweets.js / tweets.csv with a toolCheck whether timestamps are UTC or local
3Filter by date rangeExport the list and review before deleting
4Run the deletion, keep a logSave a record of what was removed

This method is the most reliable for large histories because it doesn't depend on the 3,200 limit. You're working from the source file, not the interface.

Method 2: Third-party tools with a date range option

Several deletion tools let you set "delete tweets before / between dates." These usually need read and delete permissions on your account. When you configure them, look at three things: whether the range is inclusive or exclusive, whether retweets and replies are included, and what happens if a deletion fails mid-way.

Keep the permission scope tight. Grant only what deletion needs. Don't casually check boxes like "post on your behalf" or "read your DMs." A tool that only needs to read and delete shouldn't be asking for more.

Local tool or cloud tool: which to pick

Tools for date-based deletion fall into two groups. One runs on your computer: it reads your archive, builds the deletion list, and never sends your data to someone else's server. The other is a web or cloud service that operates your account from its side after you authorize it.

FactorLocal toolCloud tool
Where data goesStays on your computerPasses through their server
Permissions neededRead the archive fileAccount read and write
Best forLarge batches, privacy-mindedOccasional small cleanups
RiskAlmost no leak riskDepends on their security

If you care about privacy and need to delete hundreds or thousands, the local tool is safer. A cloud tool is convenient, but check first what permissions it takes and whether it uploads your archive.

Will deleting a lot at once get you rate-limited

A common worry is that removing many tweets in a short span will flag your account, throttle it, or get it suspended. In practice, deleting through the official API at a steady pace rarely triggers punishment. What actually causes trouble is firing thousands of delete requests at the same instant, which can hit the API rate limit and fail part of the batch.

The safe approach is batched deletion with gaps: a few hundred per batch, a few minutes between batches. That avoids the rate limit and gives you time to check for mistakes.

What to do when a deletion request errors out

Errors usually fall into three types. A network drop means rerun that batch. A single tweet already gone (deleted by you or the platform earlier) means skip it and continue. An expired authorization means the tool logged out, so re-authorize and run again. Most deletion tools support resume: note where you stopped and pick up from there instead of starting over.

Common traps: the 3,200 limit, time zones, and drafts

  • The 3,200 cap: interface deletion only reaches the most recent 3,200. Older ones must go through the archive.
  • Time zone drift: archive timestamps are often UTC, 8 hours off your local time. Filtering "January 2020" might pull in December 2019 tweets or miss some.
  • Drafts count too: some tools count drafts and already-deleted tweets in their totals, so the number looks off. Confirm which file it's reading.

After you delete: confirm it actually worked

Deletion requests can silently fail. A day later, search your own profile for a phrase you thought was gone. If it's still there, check the tool's log for errors and re-run that batch. Don't assume a "completed" progress bar means every tweet is gone.

Also remember that deletion on X removes the tweet from your account, but copies may live elsewhere: screenshots, Google's cache, other sites that quoted you. Date-range deletion cleans your own account; it can't unpublish the rest of the internet.

Combine date range with keyword filtering

Date-only deletion has a blind spot: sensitive content doesn't always sit in one window. Your phone number might show up in 2017 too, and again in 2015. A more reliable approach is to narrow by date range first, then layer keyword filtering on top (phone, WeChat, address) to pull out the genuinely high-risk tweets for separate deletion. Date handles "which period"; keywords handle "which type of content." Using both beats either alone.

Does deleting old tweets hurt your followers or reach

Plenty of people worry that removing a few hundred old tweets will get them shadowbanned, drop followers, or reset their account age. None of that happens. Deletion only removes specific posts. It doesn't touch your follower count, doesn't change when you joined, and doesn't trigger throttling. You're deleting content, not the account. The only thing that changes is how much history others can scroll through.

Before deleting, keep one backup copy

Export the tweets you're about to delete and store them somewhere safe. Keep a copy so that on the day you need to prove "yes, I did post that back then," you have the record and save hours of hassle.

A cleanup pace that doesn't blow up

Don't delete thousands at once. Batch it: remove the most sensitive category first (phone numbers, home addresses), then the emotional stuff a day or two later, then the harmless leftovers. Batching lets you stop and verify anytime, and lowers the odds of nuking something you needed.

A note on very large archives

If your archive is huge (hundreds of thousands of tweets), parsing it can take a while and the deletion list gets long. Split the work by year: parse once, then run deletion per year so each batch stays manageable and you can verify one year at a time. There's no prize for finishing fastest; a clean, verified clear-out beats a fast, sloppy one.

Not sure where your account stands? Run a privacy check on your own device first, then decide which batch to delete based on risk level.

Frequently Asked Questions

Can I delete tweets by date directly?

X native interface does not support date-based bulk deletion; you can only remove the most recent ~3,200 tweets one at a time. To clean by date range, use your data archive with an on-device tool, or a third-party tool that supports time ranges.

How do I delete tweets beyond the 3,200 limit?

Request your data archive from Settings. Once you have tweets.js / tweets.csv, parse it with an on-device tool, filter by year, and bulk-delete. The archive is the only place that holds your full history.

Can deleted tweets be recovered?

No. Deletion on X is permanent with no trash folder. Always export the tweets you plan to delete before removing them.

Are third-party deletion tools safe?

Only check the permissions they ask for: deleting tweets needs read + delete access, not "post tweets" or "read DMs". Prefer tools that run on your own device so data is not uploaded.

Can time zones cause wrong deletions?

Yes. Archive timestamps are often UTC, an 8-hour gap from local time. Convert everything to one time zone before filtering by date.

Check your own X/Twitter footprint

Free on-device scan. Your archive never leaves your computer.

Start Free Check

Related Reads

Published on 2026-10-17. Last updated 2026-10-17.