A quote post only works when two things read well together: your comment on top and the original post nested underneath it. Mocking one up means two authors, two badges, two blocks of text and a set of numbers that belong to the outer post only. Built by hand in Figma or Slides, small mistakes such as the wrong badge on the wrong author give it away.
This guide shows how to make a quote tweet mockup with Xholic’s free Quote Tweet Generator: how to fill both posts in one step from a real quote post, how to fill each author separately, how to write the reaction, and what the exported PNG looks like. It also covers how quoting works on X itself, in case you’re here to make a real quote post rather than a picture of one.
Quote post, repost or reply?
X gives you three ways to respond to someone else’s post, and they look different on screen:
| Action | What your followers see | Your own text? |
|---|---|---|
| Repost | The original post, unchanged, with a “reposted” label | No |
| Quote | Your post, with the original shown as a card inside it | Yes |
| Reply | Your post in the conversation under the original | Yes |
A quote post is your post. It shows up on your profile and in your followers’ timelines with the original embedded, and it collects its own replies, reposts and likes. A reply sits in the original author’s thread, where people who are reading that conversation will see it.
How to make a tweet a quote on X
To quote a real post, select the Repost icon under it, choose the quote option (shown as “Quote” in X’s apps), write your comment and post it. X’s help page on how to repost covers the exact steps for web and mobile, including adding photos or a GIF to the quote.
Quote when your comment adds something your own audience should see. Reply when you’re talking to the author. If you’re unsure which reads better, a mockup is a cheap way to find out.
What you can edit
The generator draws one quote post in the layout X uses when you open a single post. Every visible part can be changed:
| Part | What you can change | Limit |
|---|---|---|
| Your post: name and handle | Free text, @ added for you |
50 and 15 characters |
| Your post: text | Free text with line breaks | 4,000 characters |
| Your post: images | Upload or drop images | Up to 4, each under 5 MB (PNG, JPG, WebP, GIF) |
| Quoted post: name and handle | Free text | 50 and 15 characters |
| Quoted post: text | Free text | 560 characters |
| Avatars | Separate uploads for each author | One image each, under 5 MB |
| Badges | Blue, gold (business), gray (government) or none, set per author | One each |
| Timestamp | Free text, such as 10:12 AM · Oct 6, 2026 |
40 characters |
| Counts | Views, replies, reposts, quotes, likes and bookmarks | Whole numbers |
The quoted card shows the author’s avatar, name, badge, handle and text. It doesn’t show its own images, date or counts, so keep anything important in the text.
If you need a standalone post instead, use the Fake Tweet Generator. For a thread or a reply chain, use the Reply Chain Generator.
How to make a quote tweet mockup, step by step
Here is the whole editor. The numbers match the steps below.

Step 1: Start from a quote post, an account or the sample
The panel at the top (1) has three shortcuts. You can also skip it and type into the sample card.
Import a post is the fastest route when the quote post already exists. Paste its link, press Import, and both posts fill in at once.

What the import copies depends on the link:
- A quote post fills both halves. Your post gets the author, text, date and time, view count, reply, repost, quote, like and bookmark counts, and up to four images. The quoted post gets its author and text. The panel confirms with “Imported the post and the post it quotes.”
- Any other post goes into the quoted slot only, with its author and text, so you can write your reaction above it. The message reads “Imported as the quoted post. Write your quote above it.”
Videos and GIFs in the imported post are skipped, because the card only shows still images. The tool tells you when that happens.
Fill from an X account copies a public profile’s display name, handle, profile photo and badge. Pick Your post or Quoted post first, then type the username and press Fill. In the screenshot above, the quoted post was filled from xholicai and the panel says “Filled the quoted post from @XholicAI.” Run it twice, once per target, to fill both authors.
Step 2: Set the author of your post
Click the name or handle (2) and type. To change the photo, use Parent avatar in the controls below the card. Use a fictional author, or your own account, unless you have permission.
Step 3: Write the reaction
Type into the text area (3). Line breaks are kept as typed. If you want to post the reaction for real afterwards, check its length in the Twitter Character Counter, because the mockup accepts far more text than a standard post. Draft with AI can write the reaction for you; see drafting the reaction.
Step 4: Add images (optional)
Drop images on the dashed area (4) or click it to choose files. You can add up to four. Each image must be under 5 MB, or the tool shows “Choose PNG, JPG, WebP, or GIF files under 5 MB.” Images attach to your post, not the quoted one.
Step 5: Edit the quoted post
The card inside the post (5) has its own name, handle and text fields. Click any of them to edit. Use Quote avatar below the card to change its photo. Keep the quoted text short: it’s context for your reaction.
Step 6: Set the timestamp and counts
The timestamp (6) is plain text, so type it in the same format X uses: 10:12 AM · Oct 6, 2026. The view count next to it, and the counts below, accept digits only. In Edit mode you see the raw number, such as 1840; the view count switches to the raw number while you type in it. In Preview and in the export, X’s short form is used (1.8K), and the reply count moves to the reply icon, as it does on X.
Step 7: Pick a theme and the two badges
Choose Dark, Dim or Light (7). The theme applies to both posts. Then set Parent badge and Quoted badge separately. A person without a check quoting a company with a gold badge is a common, believable combination.
Step 8: Preview and export
Switch to Preview to hide the dashed outlines and check the result. Choose 1x, 2x or 4x PNG (8) and press Download PNG, or use Copy image to paste it straight into Slides, Figma, Notion or a chat.
Drafting the reaction with AI
In a quote post, the reaction is usually the hard part. Draft with AI reads the quoted post’s text, so the drafts respond to it rather than starting from nothing. Describe your angle in a few words (up to 280 characters), pick a tone (Clear, Witty, Bold, Founder or Educational) and press Write 3 drafts.

Use this draft replaces the text of your post. The quoted post isn’t changed. Read the drafts as starting points and check names, numbers and claims before the image goes anywhere. If the AI service is busy you’ll see a short wait message, or drafts from templates, and you can keep editing by hand.
What the exported PNG looks like
The download is the Preview card exactly as shown, including the “Post” header bar, on a solid background in the theme’s colour. Width is fixed and height grows with the content. Here is a real 2x Light export, placed on a gray board so its edges are visible:

- 1x is 598 pixels wide. Fine for chat and small previews.
- 2x is 1,196 pixels wide. The right default for slides, docs and blog posts.
- 4x is 2,392 pixels wide. Use it for print, full-screen video or anywhere people will zoom in.
The file is named after your post’s handle, for example mayabuilds-quote-tweet.png. There’s no watermark.
How to make a quote post screenshot look real
Quote mockups fail on the relationship between the two posts more often than on the design. Check these:
- The reaction needs the quote. On X, people quote to add something: agreement with a reason, a correction, a joke. A reaction that repeats the quoted text reads like a draft.
- Badges fit each author. Gold is for businesses and gray is for government and multilateral organizations. Swap them and anyone familiar with X will notice.
- The counts belong to your post. Everything under the timestamp measures the outer post, not the quoted one. Keep it in proportion: replies, quotes and bookmarks are usually well below likes, and likes are a small share of views. The sample card has 3.2K likes on 84K views, about 4%. Our guide to calculating Twitter engagement rate has realistic ranges.
- The date comes after the quoted post. A quote can’t be older than the post it quotes.
- The theme matches the page. Light suits documents and white slides. Dim and Dark sit better on dark slides and in app previews.
Use it responsibly
A quote mockup can put words in two people’s mouths at once, which makes it easier to mislead with than a single fake post.
- Good uses: approving a brand’s reaction before it posts, client decks, ad and landing-page designs, teaching how quoting works, and parody that’s obviously parody.
- Don’t: invent a statement from a real person, fake an exchange between public figures, edit an imported post and pass it off as the original, or make “evidence”. Depending on where you are, that can be defamation or fraud, and it breaks X’s rules on impersonation and misleading media if it’s shared there.
- Label it once it leaves the room. Add “Mockup” or “Example” in the caption whenever the image could be shared further. Use fictional names for anything public, unless the accounts are yours.
If someone sends you a screenshot and you want to check it, read how to spot a fake tweet.
Troubleshooting
“Paste a post link like https://x.com/user/status/123.” The link isn’t an X post URL. Copy it from the post’s share menu. Links from x.com and twitter.com both work.
“Enter an X username like @xholicai.” The username is empty or has characters X doesn’t allow. Use letters, numbers and underscores, up to 15 characters, with or without the @.
The import filled only the quoted post. The link wasn’t a quote post, so the tool treated it as the post being quoted. Paste the link to the quote post itself (the outer one) to fill both halves.
The quoted post has no images. That’s expected. The quoted card only shows the author and text. Mention anything important in the text, or add images to your own post.
“Too many requests right now.” Profile fill, import and AI drafts are rate-limited. Wait a minute or keep editing by hand.
Copy image does nothing. Some browsers block copying images to the clipboard. Use Download PNG, or allow clipboard access for xholic.ai.
Frequently asked questions
Is the Quote Tweet Generator free?
Yes. There’s no signup, no watermark and no download limit. Profile fill, post import and AI drafts are free too, with rate limits to keep the service stable.
Can I import a quote post and get both posts?
Yes. Paste the link to a public quote post and the tool fills your post (author, text, date, counts, views and up to four images) and the quoted post (author and text) at once. A link to an ordinary post fills only the quoted slot.
Can each post have its own verification badge?
Yes. Parent badge and Quoted badge are separate settings, each with blue, gold, gray or no check.
What’s the difference between a quote post and a repost?
A repost shares someone’s post unchanged. A quote post is your own post with theirs embedded inside it, so it carries your comment and collects its own replies, likes and reposts.
Can I change the view count?
Yes. Click the number next to Views under the timestamp and type a new one, digits only. It shows the short form (84K) until you click it. Importing a quote post fills it too, and every other count and the timestamp can be edited the same way.
What size is the downloaded PNG?
598 pixels wide at 1x, 1,196 at 2x and 2,392 at 4x. Height depends on how much text and how many images the post has.
Related guides and tools
- Fake Tweet Generator guide: make a single post mockup, with believable metrics and export sizes explained.
- Reply Chain Generator guide: build a thread or reply chain of up to six posts.
- Best fake tweet generators compared: how the main mockup tools compare on realism, exports and signup.




