# How to Embed a Tweet on a Website (And What Replaced Moments)

The X/Twitter embed code, the no-JavaScript alternative, why Moments embeds are gone, and how to show curated tweets without loading a tracking script.

By Rohin Aggarwal · 2026-08-01

Embedding a single tweet is still one of the easiest embeds on the web: X generates the code for you and it works everywhere. What has changed is everything around it. Moments are gone, the widgets script carries tracking baggage, and "embed a tweet" is increasingly the wrong question when what a site actually wants is a curated, brand-safe wall of posts. The quick answer first, the honest trade-offs after.

**The short version**

- **One tweet:** open the post on x.com, click the share icon → Embed post (or paste the URL at publish.twitter.com), copy the blockquote + script snippet, paste it into your page.
- **No-JavaScript option:** keep just the blockquote and drop the script. You get a styled quote with a link instead of the full card, and zero third-party tracking.
- **Moments:** deprecated. The embeddable curated-collection format no longer exists on X; the modern equivalent is a moderated X wall you control on your own site.

## The embed code, first

On any public post, click the share icon and choose Embed post, which opens publish.twitter.com with your snippet ready. It looks like this:

```html
<blockquote class="twitter-tweet">
  <a href="https://twitter.com/user/status/1234567890"></a>
</blockquote>
<script async src="https://platform.twitter.com/widgets.js"
  charset="utf-8"></script>
```

The script upgrades the blockquote into the full interactive card: avatar, media, like and repost counts. One script tag serves every embedded tweet on the page. WordPress, Webflow, Squarespace and Ghost also accept a bare post URL pasted on its own line and convert it via oEmbed, same as they do for TikTok.

## Embedding a tweet without the script

The widgets.js script is a third-party script with the network and privacy cost that implies: it phones home to X, and privacy-conscious visitors with tracking blockers see a blank hole where the tweet should be. The lightweight alternative is to keep the blockquote and delete the script tag. You lose the interactive card; you keep the quote text and the link, styled however your own CSS says. For a testimonial or a press quote, that is often all you needed, at zero performance cost.

## The best way to embed Twitter Moments on external sites (2026 answer)

Moments, the curated tweet-collection format, were quietly wound down; the creation tools are gone and old Moment embeds no longer render as collections. If you are searching for how to embed one, the honest answer is that the format you remember does not exist any more.

What replaced the job is curation on your side of the fence: collect the posts you want (your mentions, a campaign hashtag, customer praise), moderate them, and render them as a wall you own. That keeps working when X changes its embed rules, because the content is collected via API and displayed by your widget, not iframed from X. The mechanics are in the companion guide to [embedding an X/Twitter feed](/blog/embed-twitter-feed-on-website), and the multi-network version of the same idea is [the social media aggregator guide](/blog/best-social-media-aggregator-tools).

**53%** — of consumers say they trust content from real customers more than brand-produced content (representative range, Bazaarvoice Shopper Experience Index)

## From one tweet to a wall of proof

A single embedded tweet is a quote. A moderated wall of them is social proof with compounding value: press mentions, customer praise and campaign posts in one auto-updating surface. Idukki collects X posts by handle or hashtag, runs them through moderation so an open hashtag cannot put a stranger's joke on your homepage, and mixes them with Instagram, TikTok and YouTube content in one layout. See the [X/Twitter widget](/widgets/twitter) for formats, or compose one in the [widget builder](/tools/widget-builder) without signing up.

For commerce sites there is one more step: posts that show products can be tagged so the wall sells. That is the same product-tagging flow the [shoppable video](/shoppable-video) layer uses, applied to social posts.

**The practical decision:** Quoting one post in an article: use the embed snippet, or the script-free blockquote if you care about tracking and load time. Showing curated posts as ongoing social proof: collect and moderate them into a wall you control. And treat Moments as history; the curation job moved to your side of the embed.

### FAQs

**Q: How do I get the embed code for a tweet?**

A: Click the share icon on the post and choose Embed post, or paste the post URL into publish.twitter.com. Both produce the same blockquote + script snippet, ready to paste into any HTML page or CMS embed block.

**Q: Can I embed a tweet without JavaScript?**

A: Yes. Keep the blockquote from the embed snippet and delete the script tag. The tweet renders as a styled quote with a link instead of the interactive card, loads instantly, and sends no data to X.

**Q: Why does my old Twitter Moment embed no longer work?**

A: X deprecated Moments; the creation tools were removed and legacy Moment embeds stopped rendering as collections. To show a curated set of posts today, collect them via the API and display them in a wall or feed widget you control.

**Q: Do embedded tweets affect page speed?**

A: The widgets.js script and the per-tweet iframes add third-party requests that fire on page load, and tracking blockers can leave gaps where tweets should be. For several tweets, a script-free blockquote or a lazy-loaded wall widget is meaningfully lighter.

### Sources
- [X publish embed tool](https://publish.twitter.com) — Official embed-code generator for posts and timelines
- [Bazaarvoice Shopper Experience Index](https://www.bazaarvoice.com/research/) — Consumer-trust figures (representative ranges)

---
Canonical: https://idukki.io/blog/how-to-embed-a-tweet-on-a-website
Tags: Twitter, X, Embed, Social proof
