Tweet to Image — Free Tweet Screenshot Generator
A Twitter screenshot generator that skips the screenshot. Every card is backed by a real X layout — the 598px column, the 40px avatar, the one-line name row, the zero counts that show only an icon. Edit the display name, handle, verified badge, timestamp and every engagement count, pick one of three themes (Light, Dim, Lights out), crop to 3:4 or 9:16, and export a transparent PNG at 1×, 2× or 3×. Everything renders in your browser; nothing is uploaded.
- Free, no sign-up
- Real X layout · 3 themes
- Transparent PNG · 3:4 & 9:16
- Runs offline in your browser
What is Tweet to Image?
Tweet to Image is a free browser tool that renders the contents of a post as a PNG file — a tweet screenshot generator that never actually takes a screenshot. You type in the display name, handle, body text and engagement counts; it draws a card built to the proportions of a post on X and hands you the image.
It exists because taking a Twitter screenshot the ordinary way is worse than it sounds. A raw screenshot drags in whatever else was on screen, sits at whatever pixel density your monitor happens to be, and cannot be corrected once the moment has passed. If you are putting a post into a slide, a newsletter, a thumbnail or a video, you usually want a clean card at a predictable size — and often you need to adjust something, because the counts have moved since you first saw it, or because the card is a mock-up that was never posted at all.
The layout is not a loose interpretation. It follows the real measurements of a post on X on the desktop web: a 598-pixel column, a 40-pixel avatar, the display name, verified badge, username and timestamp all on one line, and the action bar underneath. Those numbers are most of what separates a card that reads as genuine from one that reads as a knock-off.
There is no account, no quota and no watermark, and the export path never touches a server. Once the page has loaded you can turn off your network and keep working.
What can you edit in this Twitter screenshot generator?
Every value the card displays. The account, the body text, the timestamp and all four engagement numbers are inputs, not fixtures.
Every visible number
Replies, reposts, likes and views are all editable, and you can type shorthand — 3.7K, 1.2M and 3.7万 are each parsed into a number. Enter 0 and the count disappears entirely, leaving a bare icon. That is not a shortcut; it is what X does with a zero count, and getting it wrong is one of the fastest ways to make a card look fake.
Account details
Display name, @username, avatar and the blue verified badge. Upload an avatar and it is read locally with the browser file reader, or paste a direct image URL if the host allows cross-origin requests. Leave it blank and the card falls back to the X logo rather than a broken image.
Three real themes
Light (#FFFFFF), Dim (#15202B) and Lights out (#000000) — the same three X offers. Dim is the one most tools skip, treating dark mode as a single black option, and it is what a large share of people actually browse in. A dark card that uses pure black when the original was Dim is immediately wrong to anyone who uses it.
Ratios for vertical feeds
Export at the card’s natural height, or lock it to 3:4 or 9:16. The card grows to the exact ratio and the content is centred vertically, so it drops straight into a vertical feed without further cropping. Very long text pushes past the ratio, and the editor tells you when that happens instead of silently squashing the type.
English and Chinese number rules
Counts follow the page language: 3.7K and 1.2M in English, 3.7万 and 1.2亿 in Chinese. This is a real difference, not a translation of the label — X itself switches convention, and a Chinese-interface screenshot showing 37K instead of 3.7万 is wrong in a way Chinese readers notice instantly.
Nothing leaves your device
The card is drawn and captured entirely in the page. There is no upload step, no image server and no API call in the export path, which is also why the tool keeps working with the network off after the first load.
How do you turn a tweet into an image?
Five steps, all in the editor above: fill in the account, paste the text, set the numbers, pick a look, export.
- 1
Fill in the account
Type a display name and a username — the @ is added for you, so leave it off. Upload an avatar or paste an image URL, and switch the verified badge on or off.
- 2
Paste the text
Paste or write the body. Blank lines between paragraphs are kept exactly as typed, because that is how X renders them. Links, @mentions and #hashtags are detected and turned blue automatically, and long URLs are shortened for display the way the platform does it.
- 3
Set the numbers
Enter the engagement counts, in full or as shorthand. The field shows how each number will actually appear on the card, so you can check the abbreviation before you export.
- 4
Pick a look
Choose a theme, decide whether the Grok icon and the “⋯” menu should appear in the top right, and pick a ratio if you need a vertical image rather than a card sized to its own text.
- 5
Export
Export PNG downloads a file; Copy image puts the PNG straight on your clipboard for pasting into a document or a chat. 2× is the right choice for almost everything.
Twitter to PNG: what sizes and ratios can you export?
Every export is the same tweet to PNG conversion at a size you choose — three multipliers and three shapes. The card is 598 pixels wide in CSS, so 2× produces a 1196-pixel-wide PNG, the same pixel density as a screenshot taken on a Retina display.
| Original | 1196 × varies | Embedding in a document, a slide or a blog post, where the height should follow the text. |
|---|---|---|
| 3:4 | 1196 × 1594 | Feeds that favour a portrait crop. The card is centred vertically in the frame. |
| 9:16 | 1196 × 2126 | Full-height vertical video and story formats. |
The multiplier only changes resolution, never layout: 1× is 598 pixels wide, 2× is 1196 and 3× is 1794. Text does not reflow between them, so the line breaks you see in the preview are the line breaks you get in the file. Pick 3× only when something downstream will scale the image up again.
Corners are rounded by default at the same 16-pixel radius X uses. The area outside the curve is transparent in the exported PNG, which means the card sits cleanly on any background instead of carrying a white box around it. Switch corners to square if you need hard edges — for example when the image will be cropped anyway.
PNG is the only output format, and that is deliberate. A tweet is mostly small text on a flat background, which is the worst case for JPEG — it leaves visible fringing around every letter — and JPEG cannot carry the transparent corners at all. So a Twitter to PNG export here is lossless: re-exporting the same card, or exporting it at 3× and scaling down later, never degrades the type.
Does anything you type leave your browser?
No. The text, the numbers and any avatar you upload stay in the page. There is no account, no upload step and no server involved in producing the image.
The card is ordinary HTML and CSS rendered by your browser, then captured to a PNG on the same page. Uploaded avatars are read with the browser’s FileReader interface, which converts a local file to data the page can draw without ever sending it anywhere.
The editor does keep your current card in your browser’s local storage, so your work is still there when you come back. That data stays on your device and is not readable by anyone else; clearing site data for this domain removes it.
There is exactly one case where the tool can cause an outbound request with your input: if you paste a remote image URL for the avatar, your browser fetches that URL from whichever host you named, and that host sees the request. That is the same thing any image on any page does, and it only happens because you asked for it.
The site itself does load Google Analytics to count visits. It reports which page you are on, not what is on your card — the text, the numbers and the avatar are never part of what it sends. The privacy policy sets out exactly what it collects and how to block it.
Every exported PNG carries a note in its file metadata identifying it as a synthetic image, written as a PNG tEXt chunk and, for non-ASCII text, an iTXt chunk. The note is invisible and does not change how the picture looks, but any standard image tool can read it back. There is no option to remove it.
What do the official sources say?
Three passages that directly shaped how this tool behaves.
Posts are one of our most visible brand elements, so it’s important that they are presented correctly.
Content Credentials function like a nutrition label for digital content.
Each tEXt chunk contains a keyword and a text string.
Where does this information come from?
The behaviour reproduced here, and the claims made on this page, come from the following public sources.
- X — Developer display requirementsX’s own rules for how posts, metrics and attribution should be shown outside the platform.
- X — Brand toolkitOfficial brand and logo guidance, referenced so this site stays clearly independent from X Corp.
- W3C — PNG specification, tEXt and iTXt chunksThe standard behind the synthetic-image note written into every exported file. iTXt carries the UTF-8 version.
- MDN — FileReader APIThe browser interface used to read uploaded avatars locally, which is why no image is transmitted.
- C2PA — Content provenance standardBackground on why generated images should carry provenance information at all.
- Twemoji — emoji graphics (CC-BY 4.0)Emoji on the card are drawn with Twemoji, the same set X uses on the web, so a card looks identical whatever system you are on. Graphics © Twitter and the Twemoji contributors, used under CC-BY 4.0.
What else do people ask?
Grouped by what you are actually trying to find out: how it works, what it costs you, and where the limits are.
Using it
How do I turn a tweet into an image?
Paste the post’s text into the editor, fill in the display name, @username and the engagement counts, pick a theme, then press Export PNG. It takes under a minute and the file lands in your downloads. There is no link import yet — you supply the text, which also means you can write a post that was never published, or fix a typo before exporting.
How do I save a tweet as an image without taking a screenshot?
That is exactly what this is for. An ordinary Twitter screenshot drags in whatever else was on screen, comes out at whatever pixel density your monitor happens to be, and cannot be corrected afterwards. Here you get just the card, at an exact size you choose (1×, 2× or 3×), with rounded corners that export transparent so the image drops onto any background — and you can still change the numbers or fix the text before you export.
Can I convert an entire tweet thread into one image?
Not yet. Right now it renders a single post. Threads, quote posts and replies are the most requested additions and are the next thing on the list, but promising a date would be guessing. For now, exporting each post separately and stacking them in any image editor is the workaround.
Does it work with X (formerly Twitter)?
Yes — the card is built to the current X layout, not the old Twitter one. That includes the view count in the action bar, the Grok button in the top right and the three themes X ships today (Light, Dim and Lights out). If you are recreating an older screenshot, switch the view count off and hide the Grok icon.
Can I remove the background or change the theme?
Both. Three themes cover what X itself offers: Light (#FFFFFF), Dim (#15202B) and Lights out (#000000). Corners are rounded by default and the area outside the curve exports transparent, so the card has no hard background box around it. Switch corners to square if you want a solid rectangle instead.
Can I include the original likes, reposts and views?
Yes, and that is the point — replies, reposts, likes and views are all editable, so a card can carry the real numbers instead of blank icons. You can type shorthand like 3.7K or 1.2M and it is parsed for you. Enter 0 and the number disappears, leaving just the icon, which is exactly how X renders a zero count.
Cost and usage rights
Is this really free? Are there watermarks?
Yes, and no. There is no account, no sign-up, no usage quota, no paid tier and no watermark anywhere on the output. The only thing added to an exported file is an invisible note in its metadata saying the image was generated rather than screenshotted — it does not appear on the picture and does not change how it looks.
Can I use the images on Instagram, LinkedIn or my blog?
Nothing here restricts what you do with the files, and the 3:4 and 9:16 ratios exist precisely for vertical feeds. What you may actually do with a given image depends on the content you put into it — the words, the display name and the avatar may belong to someone else, and sorting that out is your call, not ours.
Do I need to log in to X to use it?
No login of any kind — not to X, and not to us. The tool never talks to X, never asks for a token, and has no account system. That also means it keeps working if you are logged out, rate-limited, or not on X at all.
Limits and technical questions
What if the post is deleted or private?
It makes no difference to the tool, because nothing is fetched from X — you type the content in yourself. If a post is gone you will need the text from somewhere else (an archive, a quote, your own memory), but once you have it, the card renders the same as any other.
Is there an app or an API for developers?
There is no mobile app. There is a command-line tool that renders a JSON spec straight to PNG using a real browser, plus a headless URL mode — open the page with ?embed=1 and a compressed spec, wait for a ready flag and read the resulting data URL. That is enough to generate cards in a script or a build pipeline; see llms.txt for the full field list.
Can I export to JPG or SVG instead of PNG?
Not at the moment — the export is Twitter to PNG only, for both the download and the clipboard copy. PNG keeps small text sharp where JPEG smears it, and it is the format that carries the transparent rounded corners. If something downstream insists on a JPG, convert the exported file afterwards; nothing about the card depends on the container.
How should I credit the original author?
Keep the display name and @username accurate on the card, and link to the original post wherever you publish the image. Do not change what someone wrote and present it as theirs — the terms of service prohibit it, and the metadata note in every exported file makes a generated image identifiable as generated.