Please note:

Because of very low usage, we plan to retire the Likes, Collections, and Moments timelines. We recommended you use the Profile and Lists timelines, which we’re updating to become faster, easier to use, and more up-to-date with Twitter features and functionality.

You can learn more about this change in our announcement.

Embedded Timelines

Embedded timelines are an easy way to embed Tweets on your website in a compact, linear view. Choose between a profile timeline to get the latest Tweets from a Twitter account, or a List timeline containing a curated list of Twitter accounts.

An embedded timeline consists of two parts: including an embed code that links your webpage to the timeline on Twitter.com, and the Twitter for Websites JavaScript to transform the link into a fully-rendered timeline.


Display styles

All timelines support a linear template display with polling for updates and theming customizations. Collections may be also be displayed in a rich photo-centric grid template.

Grid style example

Timeline types

Profile timeline

profile timeline displays the latest Tweets from the specified (public) Twitter account.


list timeline displays the latest Tweets from a curated, public list of Twitter accounts. The timeline includes a header displaying the list’s name, description, and curator. Create lists on Twitter.com, the Twitter app, or in TweetDeck, learn more here.



collection timeline displays Tweets curated by a Twitter user in their chosen display order. You can create collections using TweetDeck, or via the API.



A likes timeline displays the most recently liked Tweets from the specified (public) Twitter account.

How to add an embedded timeline to your website

Visit publish.twitter.com to generate embed codes for profiles, lists, and collections. You can also click “Embed this…” from the “•••” menu on timeline screens on Twitter.com, or the “Share” menu of a TweetDeck column.


An embedded timeline automatically adjusts to the width of its parent element with a minimum width of 180 pixels and a maximum width of 520 pixels. The grid display has a minimum width of 220 pixels. Set the maximum width or the maximum height of an embedded timeline by adding a data-width or data-height attribute to the embed code anchor element.

      <a class="twitter-timeline"
Tweets by @TwitterDev

Customize widget components

Custom chrome


Control the frame around the linear timeline by setting a data-chrome attribute with space-separated tokens for each chrome component.

Token Description
noheader Hides the timeline header. Implementing sites must add their own Twitter attribution, link to the source timeline, and comply with other Twitter display requirements.
nofooter Hides the timeline footer and Tweet composer link, if included in the timeline widget type.
noborders Removes all borders within the widget including borders surrounding the widget area and separating Tweets.
noscrollbar Crops and hides the main timeline scrollbar, if visible. Please consider that hiding standard user interface components can affect the accessibility of your website.
transparent Removes the widget’s background color.


      <a class="twitter-timeline"
  data-chrome="nofooter noborders">
Tweets by @TwitterDev

Limiting the number of Tweets displayed

Display a specific number of items between 1 and 20 by customizing your embed HTML.

Add a data-tweet-limit attribute to the embed code to specify a number of Tweets. The timeline will automatically adjust its height to display specified number of Tweets. The timeline is fixed after display; it will not poll for new Tweets.


      <a class="twitter-timeline"
Tweets by @TwitterDev

Accessibility: Override ARIA live politeness

An embedded timeline describes its content for screen readers and other assistive technologies using additional markup defined in WAI-ARIA standards. A timeline widget is a live region of a page which will receive updates when new Tweets become available.

By default, a timeline has a politeness value of polite by default; set a data-aria-polite attribute value of assertive to set the embedded timeline live region politeness to assertive, for example if you’re using the embedded Timeline as a primary source of live content in your page.

      <a class="twitter-timeline"
Tweets by @TwitterDev