Twitter Cards

by kostja948dd89c57395eNo license1K starsListed Oct 8, 2026Updated Oct 8, 2026Repository updated 2 days ago

When the user wants to add, audit, implement, or optimize Twitter Card metadata for X link previews, including twitter:card, twitter:title, twitter:description, twitter:image, or X previews. For a full metadata lifecycle use page-metadata; for broader social previews use open-graph.

AI-generated overview

Writes and audits Twitter Card metadata so links shared on X show correct titles, descriptions and images.

What it does
This skill provides rules and reference tables for implementing X/Twitter Card meta tags, covering card types such as summary and summary_large_image, the recommended tag set, image requirements, and common mistakes. It supplies copy-paste examples for generic HTML and Next.js App Router metadata, plus guidance on testing deployed HTML and cached previews. It produces the tag markup and implementation guidance rather than generating images.
When to use it
Use it when adding, auditing, implementing or optimizing Twitter Card metadata for X link previews, including twitter:card, twitter:title, twitter:description and twitter:image. It is also relevant when share buttons or social previews need correct X cards.
Requirements
No scripts or packages are required; it is instructions only. Implementing the output assumes a web project that can emit HTML head metadata, and image tags need absolute HTTPS image URLs.

SEO On-Page: Twitter Cards

Owns X/Twitter Card writing and implementation rules. page-metadata owns the full-page lifecycle and release verification. Platforms may use Open Graph fallbacks, so define X-specific copy only when it adds value.

When invoking: On first use, if helpful, open with 1–2 sentences on what this skill covers and why it matters, then provide the main output. On subsequent use or when the user asks to skip, go directly to the main output.

Scope (Social Sharing)

  • Twitter Cards: X-specific meta tags; control how links appear when shared on X/Twitter

Card Types

TypeUse case
summarySmall card with thumbnail
summary_large_imageLarge prominent image (recommended; 1200×675px)
appMobile app promotion
playerVideo/audio content

Recommended Tags (summary_large_image)

html
<meta name="twitter:card" content="summary_large_image"><meta name="twitter:title" content="Your Title"><meta name="twitter:description" content="Your description"><meta name="twitter:image" content="https://example.com/image.jpg"><meta name="twitter:site" content="@yourusername"><meta name="twitter:creator" content="@authorusername"><meta name="twitter:image:alt" content="Alt text for image">
TagGuideline
twitter:cardRequired; summary_large_image for most pages
twitter:titleConcise social title; same page identity as SEO/OG copy, not necessarily identical text
twitter:descriptionAccurate social summary without unsupported claims
twitter:imageAbsolute URL; unique per page
twitter:site@username of website
twitter:creator@username of content creator
twitter:image:altAlt text; max 420 chars; accessibility

Image Requirements

ItemGuideline
Aspect ratio2:1
Minimum300×157 px
RecommendedUse a high-resolution image suited to the selected card and verify current platform behavior
DeliveryAbsolute HTTPS URL with a successful image response
Format and sizeVerify against current X documentation when implementation depends on exact limits

Common Mistakes

  • Missing Twitter Card tags (Twitter won't display images properly without them)
  • Using relative image URLs instead of absolute https://
  • Images too small or wrong aspect ratio
  • Title/description too long (gets truncated)
  • Mechanically copying SEO copy when the share context needs different wording
  • Changing the product identity or promise between SEO, OG, and X metadata

Implementation

Next.js (App Router)

tsx
export const metadata = {  twitter: {    card: 'summary_large_image',    title: '...',    description: '...',    images: ['https://example.com/twitter.jpg'],    site: '@yourusername',    creator: '@authorusername',  },};

HTML (generic)

html
<meta name="twitter:card" content="summary_large_image"><meta name="twitter:title" content="Your Title"><meta name="twitter:description" content="Your description"><meta name="twitter:image" content="https://example.com/image.jpg"><meta name="twitter:site" content="@yourusername"><meta name="twitter:image:alt" content="Alt text">

Testing

Inspect the deployed initial HTML and test an actual share/preview workflow available to the current X product. Do not depend on the retired public Card Validator as a release gate. Allow for cached previews.

Related Skills

  • social-share-generator: Share buttons use Twitter Cards for X previews when users share; Cards must be set for share buttons to show proper previews
  • open-graph: OG tags; Twitter falls back to OG if Twitter tags missing
  • title-tag, meta-description: Search copy; may differ while preserving page identity
  • page-metadata: Full lifecycle, source-of-truth implementation, and production validation
  • twitter-x-posts: X post copy and engagement (different from link previews)
  • twitter-card-image-generator: Programmatic Twitter Card image generation — 1200×675px, 2:1 ratio, player card posters, dark mode adaptations for ~40% of X users, timeline-safe zone design for mobile 1:1 crop, all 6 visual styles from og-image-generator. This skill covers how to SET the twitter:image tag; twitter-card-image-generator covers how to CREATE the image.

Source and attribution

Source:kostja94/marketing-skillsinskills/seo/on-page/twitter-cardsat commit8dd89c5

License: No license

Content belongs to its original authors. SourceWeft indexes it from a public repository.

Report or request removal