One card, and then a PNG of it.
The card is a single X post: an avatar, a display name, a handle, an optional verified badge, the post text, a timestamp, and a row of reply, repost, like and view counts. You type every value, so the post says exactly what your script needs.
What you control
- Name and handle. Both are free text. The @ is added for you.
- Verified badge. Off, blue, gold or gray. It is drawn as a plain check glyph, not a real brand mark.
- Avatar. Upload a picture from your device, or keep the generated initials. An uploaded image stays in the browser and never reaches a server.
- Post text. Line breaks work. Hashtags and @mentions color themselves blue.
- Time and date. Set both.
- Counts. Replies, reposts, likes and views, or switch the whole engagement bar off.
- Theme. Light, dim or dark.
The download renders at a 3x pixel ratio, so a 560 point wide card lands around 1680 px wide. That is sharp on a 1080 px vertical video and on a phone at full zoom.
If you need a chat instead of a post, use the fake iMessage screenshot generator or the fake text message generator.
Seven steps, about a minute.
- Type the display name and the handle. Decide whose account this is first. The voice follows the name.
- Set the avatar. Upload an image from your device, or keep the generated initials. Initials look right for a small fictional account.
- Pick the badge. Off, blue, gold or gray. On X, gold usually reads as a company and gray as a government account. The color sets the tone before anyone reads a word.
- Write the post. Keep it to two or three lines if the image sits on screen for a few seconds. Line breaks, hashtags and @mentions all work.
- Set the time and the date. A 3:14 AM timestamp is a joke on its own. A date from four years ago is a different joke.
- Set the counts. Replies, reposts, likes and views. Twelve likes and 40,000 likes tell two different stories. Turn the engagement bar off if you want the text alone.
- Choose a theme and download. Dark sits better on video footage. Light reads better in a carousel. Then export the PNG.
If the first wording is not funny, change three words and download it again. Nothing counts your exports.
The premise does the work, not the design. These ten patterns keep landing:
- A confession that ages badly, posted with total confidence.
- A hot take undermined by one dumb typo in the second line.
- A customer service reply that is polite, fast, and solves nothing.
- The "nobody: / me:" setup, with the second line far too specific.
- A screenshot of your own bad idea from two years ago.
- A quote that sounds profound and means absolutely nothing.
- A one-word reply sitting under 40,000 likes.
- An announcement that nobody asked for and nobody wanted.
- A niche complaint only your audience understands.
- A wholesome reply that reframes the whole original post.
Two of these need the counts to carry the joke. The one-word reply only lands at 40,000 likes, and the announcement is funnier at 3. Set the numbers first.
A tweet card is a reading frame. It tells the viewer the words came from a person, not from you, and that framing carries more weight than the same line typed over a background.
| Where it goes | What the tweet does | What to watch |
|---|
| Meme reveal frame | Holds as the punchline after a text hook | Two lines maximum |
| Voiceover clip | Sits on screen while the audio reads it | Match the read to the text word for word |
| Thumbnail | Carries the entire hook | Crop tight. Body text vanishes at that size |
| Carousel slide | Opens the story or closes it | Use the light theme |
| Reaction video | The thing you are reacting to | Leave it up long enough to read |
| Ad creative | Plays as a joke or as social proof | Keep the account fictional. A fake customer quote is a real problem |
The first row is the one most people miss. A fade-in meme holds a text hook alone for about a second and a half, then fades an image in underneath it. A tweet screenshot is close to perfect for that slot: already text, already high contrast, already shaped like something a viewer would screenshot. Drop the PNG into the meme video generator.
A tweet card also works as the cold open on a narrated video. The Reddit story video generator and the AI voiceover video generator supply the narration behind the still. Every format sits on the faceless video generator hub.
Keep the account fictional
This is a mockup tool for content. That is the whole scope, and the line is not blurry.
Do not put a real person's name, handle or photo on a post they never wrote. Do not attribute a statement to a real company. Do not present the image as a real post.
Putting words in a real person's mouth is impersonation, and if the words damage them it is defamation. Neither stops being true because the image started as a joke.
Invent the account. A made-up name with a made-up handle is funnier anyway, because the audience is reading the joke instead of checking whether the post is real. The same rule applies to the fake notification generator and to every other screenshot mockup: fictional sender, fictional brand, fictional everything.