Twitter/X Media Downloader

One-click download of images/videos from Twitter/X, with custom filenames and history.

You will need to install an extension such as Tampermonkey, Greasemonkey or Violentmonkey to install this script.

You will need to install an extension such as Tampermonkey to install this script.

You will need to install an extension such as Tampermonkey or Violentmonkey to install this script.

You will need to install an extension such as Tampermonkey or Userscripts to install this script.

You will need to install an extension such as Tampermonkey to install this script.

You will need to install a user script manager extension to install this script.

(I already have a user script manager, let me install it!)

You will need to install an extension such as Stylus to install this style.

You will need to install an extension such as Stylus to install this style.

You will need to install an extension such as Stylus to install this style.

You will need to install a user style manager extension to install this style.

You will need to install a user style manager extension to install this style.

You will need to install a user style manager extension to install this style.

(I already have a user style manager, let me install it!)

Author
ShanksSU
Daily installs
19
Total installs
548
Ratings
7 0 0
Version
0.2.1
Created
2026-03-27
Updated
2026-04-08
Size
65.2 KB
License
MIT
Applies to

Twitter/X Media Downloader

This is a Userscript for Twitter/X that allows you to download images and videos from tweets with one click. It also provides features like custom filenames, keyboard shortcuts, and a complete download history.

Main Features

  • One-Click Media Download Adds a dedicated download button to the action bar at the bottom right of a tweet (or the bottom right of an individual image). Supports downloading images, videos, and GIFs in the highest quality.
  • Custom Filename Format You can freely define the filename of the downloaded media in the settings interface.
    • Tag Mode: Construct filenames by dragging and dropping tags (e.g., username, Tweet ID, upload date).
    • Custom Mode: Retains the traditional text input method for more advanced naming rules.
  • Download History A floating button is provided at the bottom left of the page. Clicking it opens the history panel. The panel displays downloaded media thumbnails, file sizes, and post times in a table format. It also supports dragging to adjust column widths, navigating to the original tweet, and deleting records.
  • Keyboard Shortcut Support Hover your mouse over the target tweet and press the specified shortcut key (default is D) to trigger the download directly without clicking the button.
  • Personalized UI & Multilingual The settings window supports switching between light and dark themes. Built-in languages include English, Japanese, Simplified Chinese, and Traditional Chinese. It automatically follows the system language and can also be switched manually.

Installation

  1. First, you need to install a userscript manager in your browser, such as Tampermonkey or Violentmonkey.
  2. Click the installation link of this project, or copy the script source code and add it to the manager to complete the installation.

Usage

  • Download Media: After the script is loaded, a download icon will appear next to the Like (Heart) button at the bottom of the tweet. Click it to download. If the tweet contains multiple images, there will also be individual download buttons at the bottom right of each image.
  • Open Settings & History: Click the floating button with a number at the bottom left of the webpage to open the history and settings panel.
  • Change Shortcut: In the settings panel, find the Keyboard Shortcut field, input your desired English letter, and click save.

Supported Filename Variables (Custom Mode)

If you choose to use Custom Mode, you can use the following variables in the input box:

  • {user-name} : Display name of the user
  • {user-id} : Account ID of the user
  • {status-id} : Numeric ID of the tweet
  • {date-time-local} : Local time the tweet was posted
  • {file-type} : Media type (photo, video)
  • {file-name} : Original filename
  • {index} : Index number for multiple images
  • {full-text} : Full Tweet Text

Notes

  • Features like fetching file size might display as "Unknown" due to network conditions. This is normal and does not affect the actual download.
  • When Twitter/X updates its web structure, the buttons might temporarily stop working.