Tweet viewer
Open any public tweet link without logging in.
Paste the link. You get X's official embed card, no account required. If the tweet is gone, PeekVault checks the archive for a snapshot and tells you honestly when there is none.
Updated September 2026
What you can see right now
Any public tweet or X post, by link
Text, photos, video preview, author, date and like count, rendered by X's own embed endpoint. Quote tweets show the quoted post too.
A tweet that was deleted
The embed fails, so PeekVault checks the Internet Archive for a capture of that URL. If one exists, it opens inline. If not, the page says so.
Replies, the thread below, or the author's other posts
Embeds show one post. For the author's other captured tweets, open the profile in the Twitter viewer.
Posts from protected accounts, or age-restricted posts
X refuses to embed these to anyone who is not logged in and approved. No viewer can change that.
What you can see, and why it works
Every tweet has an official embed. It is the card you see inside news articles, and X generates it from a public endpoint that does not check whether you are logged in. The tweet viewer sends your link to that endpoint, gets back the card, and shows it. Nothing on x.com is fetched, nothing is scraped, and nothing is stored on this site. If X's widget script is slow, PeekVault falls back to the same tweet data X serves to embedded timelines and draws a plain card from it.
The card shows the post text with links intact, up to four photos or a video preview, the author's name and handle, the timestamp, and the like count at render time. Quote tweets include the quoted post. Polls, Spaces and some Communities posts render as a link back to X instead of a card, because X does not embed them.
Why some tweets will not embed
When the embed endpoint returns nothing, it is almost always one of these: the tweet was deleted; the account is protected, suspended, or withheld in your country; the post is marked sensitive or age-restricted; or X is throttling embed requests during a busy period. The first three are permanent and identical for every viewer on the internet. The last one clears within minutes.
After a failure, PeekVault looks up the tweet URL in the Internet Archive. A capture from before the deletion opens in the snapshot reader with the date it was taken. No capture means the page says so and points you to the author's profile timeline, where tweets from the same period may still be readable. It does not invent a result and it does not send you to a mirror.
FAQ
Straight answers
Why does a tweet link ask me to log in, but the embed works?+
X blocks logged-out browsers from x.com pages, but keeps the embed endpoint open because news sites and blogs depend on it. The embed is the same tweet, delivered through the door X leaves open.
Why did the embed fail for my link?+
Four reasons cover almost every case: the tweet was deleted, the account is protected or suspended, the post is age-restricted or marked sensitive, or X is rate-limiting embed requests for a few minutes. PeekVault checks the archive automatically after a failure; if the tweet is still live, try again shortly.
Will the tweet's author know I viewed it?+
No. Embed requests go to X's embed servers, not to the author's account, and produce no notification or view count they can see.
Does it work with x.com, twitter.com, mobile links and t.co links?+
x.com, twitter.com and mobile.twitter.com links all work. Shortened t.co links do not, because resolving them would mean fetching X on your behalf. Open the t.co link once in your browser and copy the final URL.
Can I read a whole thread?+
Not here. An embed is one post. Paste each link from the thread separately, or open the author's profile in the Twitter viewer and use the year chips to find the captured tweets from that day.
Is this the same as Nitter?+
No. Nitter scraped X and re-served whole timelines, which is why it was shut down. The tweet viewer uses only X's official embed and, as a fallback, public Internet Archive captures. It shows less, and it stays up.
Keep going