X (formerly Twitter) remains one of the most influential real-time communication platforms, offering advertisers the ability to reach users during live events, trending conversations, and daily content consumption. Understanding the full landscape of X Ads dimensions and metrics is essential for anyone running paid campaigns on the platform.
This guide provides a complete reference of every dimension and metric available in X Ads as of 2026. We've organized them by level — campaign, line item (ad group), and creative — with practical context on when and how to use each one. Whether you're building custom dashboards, pulling data through the X Ads API, or optimizing campaigns in the X Ads Manager, this reference covers everything you need.
What Are X Ads Dimensions vs Metrics?
Before diving into the full reference, it's important to understand the fundamental difference between dimensions and metrics — two concepts that serve different purposes in advertising data analysis.
Dimensions are descriptive attributes that define what you're looking at. They are the labels, categories, and identifiers that let you organize and filter your data. Examples include campaign name, line item ID, tweet text, audience segment, and geographic location. Dimensions answer the question: "How do I want to slice this data?"
Metrics are quantitative measurements that tell you how things performed. They are the numbers: impressions, engagements, clicks, spend, conversions, engagement rate, CPC. Metrics answer the question: "What happened with my ads?"
Breakdowns are a special type of dimension that you can apply across any metric to segment performance. For example, you can break down your conversion metrics by device type to understand mobile vs. desktop behavior, or by location to see which regions drive the best results.
How Is X Ads Data Structured?
X Ads follows a three-level hierarchy: Campaign > Line Item > Promoted Tweet/Creative. Campaigns set the objective, funding source, and high-level budget. Line items (equivalent to ad groups) define targeting, bid type, bid amount, placements, and schedule. Promoted tweets contain the actual creative content — text, images, videos, and cards. Metrics can be queried at any level, with creative-level data rolling up to line item and campaign totals.
The X Ads API returns dimensions as object fields and metrics through the stats and analytics endpoints. Most metrics are available at all levels, while some dimensions are level-specific (e.g., targeting parameters only exist at the line item level). X's reporting system supports date range filtering, granularity settings (day, total), and placement-level breakdowns.
Campaign-Level Dimensions
Campaign-level dimensions define the top-level structure of your X advertising. These fields identify the campaign, its objective, budget configuration, funding source, and operational status. Use these dimensions to organize reporting by campaign and understand the strategic setup behind your results.
| Dimension | API Field | Description |
|---|---|---|
| Campaign ID | id | Unique identifier for the campaign |
| Campaign Name | name | The name of the campaign as set by the advertiser |
| Objective | objective | Campaign goal: REACH, ENGAGEMENTS, VIDEO_VIEWS, WEBSITE_CLICKS, CONVERSIONS, APP_INSTALLS, FOLLOWERS, or PRE_ROLL_VIEWS |
| Campaign Status | entity_status | Current status: ACTIVE, PAUSED, DRAFT, or EXPIRED |
| Servable | servable | Whether the campaign is eligible to serve ads (accounts for all parent-level checks) |
| Daily Budget | daily_budget_amount_local_micro | Daily budget in microcurrency (divide by 1,000,000 for actual amount) |
| Total Budget | total_budget_amount_local_micro | Total campaign budget across its entire flight in microcurrency |
| Funding Instrument ID | funding_instrument_id | Payment method linked to the campaign (credit card, insertion order) |
| Currency | currency | Account currency code (USD, EUR, GBP, etc.) |
| Start Time | start_time | Campaign start date/time in ISO 8601 format |
| End Time | end_time | Campaign end date/time (null if no end date set) |
| Standard Delivery | standard_delivery | Whether the campaign uses standard (paced) delivery or accelerated delivery |
| Frequency Cap | frequency_cap | Maximum impressions per user within a specified time window |
| Created At | created_at | Timestamp when the campaign was first created |
| Updated At | updated_at | Timestamp of the last modification to the campaign |
Ad Group (Line Item) Dimensions
Line items (X's equivalent of ad groups) control targeting, bidding, placements, and optimization settings. This is where you define who sees your ads, how much you pay, and where your promoted content appears. Line items are the most configuration-heavy level in the X Ads hierarchy.
| Dimension | API Field | Description |
|---|---|---|
| Line Item ID | id | Unique identifier for the line item |
| Line Item Name | name | Name of the line item as defined by the advertiser |
| Line Item Status | entity_status | Current status: ACTIVE, PAUSED, or DRAFT |
| Bid Type | bid_type | Bidding approach: AUTO (automatic), MAX (maximum bid), or TARGET (target cost) |
| Bid Amount | bid_amount_local_micro | Bid amount in microcurrency for the selected bid type |
| Optimization | optimization | Delivery optimization: DEFAULT, WEBSITE_CONVERSIONS, APP_INSTALLS, or ENGAGEMENTS |
| Placements | placements | Where ads appear: ALL_ON_X, PUBLISHER_NETWORK, or X_PROFILE (selected placements) |
| Product Type | product_type | Ad product: PROMOTED_TWEETS, PROMOTED_ACCOUNT, PROMOTED_TRENDS, IN_STREAM_VIDEO |
| Audience Targeting | targeting_criteria | Targeting rules including followers, interests, keywords, conversation topics, events |
| Tailored Audiences | tailored_audiences | Custom audiences: website visitors, CRM lists, mobile app users, lookalikes |
| Age Targeting | targeting.age_range | Age range targeting: 13-17, 18-24, 25-34, 35-49, 50-54, 55-64, 65+ |
| Gender Targeting | targeting.gender | Gender targeting: MALE, FEMALE, or ANY |
| Location Targeting | targeting.locations | Geographic targeting by country, region, metro, city, or postal code |
| Language Targeting | targeting.languages | Languages targeted (based on user interface language and tweet language) |
| Device Targeting | targeting.devices | Device models and OS versions targeted |
| Keyword Targeting | targeting.keywords | Keywords users have tweeted, searched, or engaged with |
| Conversation Topics | targeting.conversation_topics | Conversation topics users engage with (10,000+ available topics) |
| Events Targeting | targeting.events | Live events on X that users are engaging with |
| Start Time | start_time | When the line item begins delivering |
| End Time | end_time | When the line item stops delivering |
Creative/Tweet Dimensions
Creative dimensions describe the individual promoted tweets — their content, format, media assets, and card types. X supports several creative formats including promoted tweets with images, videos, carousels, and various card types. These dimensions are critical for creative analysis and understanding which content resonates with your target audience.
| Dimension | API Field | Description |
|---|---|---|
| Tweet ID | tweet_id | Unique identifier for the promoted tweet |
| Promoted Tweet ID | id | Unique identifier for the promoted tweet association with a line item |
| Tweet Text | full_text | The full text content of the tweet (up to 280 characters) |
| Creative Type | creative_type | Format: PROMOTED_TWEET, IMAGE_TWEET, VIDEO_TWEET, CAROUSEL, MOMENT |
| Card Type | card_type | Card format: WEBSITE_CARD, IMAGE_APP_DOWNLOAD, VIDEO_WEBSITE, VIDEO_APP_DOWNLOAD, IMAGE_CAROUSEL, VIDEO_CAROUSEL, IMAGE_MULTI_DEST, DM_CARD |
| Card URI | card_uri | Unique identifier for the card creative attached to the tweet |
| Media URL | media_url | URL of the image or video media attached to the tweet |
| Media Type | media_type | Type of media: IMAGE, VIDEO, GIF, or ANIMATED_GIF |
| Website URL | website_url | Destination URL for website cards |
| Website Title | website_title | Title text displayed on the website card |
| App ID | app_id | App store ID for app install cards |
| Approval Status | approval_status | Review status: ACCEPTED, REJECTED, PENDING, or IN_REVIEW |
| Created At | created_at | When the promoted tweet was first created |
Core Performance Metrics
These are the fundamental metrics that measure how your X ads are delivered and interacted with. X's metric model centers around "engagements" — a broad category that encompasses all user interactions with your promoted content. Understanding the hierarchy of engagement metrics is key to accurate reporting.
| Metric | API Field | Description | Formula / Notes |
|---|---|---|---|
| Impressions | impressions | Number of times your promoted tweet was served to users | Counts each time the tweet appears in a user's timeline, search, or profile |
| Engagements | engagements | Total interactions: likes, retweets, replies, follows, clicks, and more | Broadest interaction metric — includes all user actions on the tweet |
| Engagement Rate | engagement_rate | Engagements as a percentage of impressions | (Engagements ÷ Impressions) × 100 |
| Clicks | clicks | All click actions on the tweet | Includes URL clicks, profile clicks, hashtag clicks, detail expands, and media clicks |
| Link Clicks | url_clicks | Clicks on URLs within the tweet or card | Use this for measuring website traffic intent, not total clicks |
| CTR (Link) | url_click_rate | Link click-through rate | (Link Clicks ÷ Impressions) × 100 |
| CPC (Link) | cost_per_url_click | Average cost per link click | Spend ÷ Link Clicks |
| CPC (All) | cost_per_click | Average cost per click (all click types) | Spend ÷ Clicks |
| CPM | cpm | Cost per 1,000 impressions | (Spend ÷ Impressions) × 1,000 |
| CPE | cost_per_engagement | Cost per engagement (all engagement types) | Spend ÷ Engagements |
| Spend | billed_charge_local_micro | Total amount spent in account currency (microcurrency) | Divide by 1,000,000 for actual currency amount |
| Reach | reach | Estimated unique users who saw your promoted tweet | Available for reach-objective campaigns |
| Frequency | frequency | Average times each user saw your promoted tweet | Impressions ÷ Reach |
Conversion Metrics
Conversion metrics measure the business outcomes driven by your X ads — website purchases, app installs, signups, and other valuable actions. These are tracked through the X Pixel (website events) and mobile measurement partners (app events). X supports configurable attribution windows for both click-through and view-through conversions.
| Metric | API Field | Description | Notes |
|---|---|---|---|
| Website Conversions | conversion_purchases_web | Purchase conversion events on your website | Tracked via X Pixel Purchase event |
| Website Sign Ups | conversion_sign_ups_web | Sign-up events on your website | Tracked via X Pixel SignUp event |
| Website Page Views | conversion_site_visits_web | Page view events on your website | Tracked via X Pixel PageView event |
| Add to Cart | conversion_add_to_cart_web | Add-to-cart events on your website | Tracked via X Pixel AddToCart event |
| Downloads | conversion_downloads_web | Download events on your website | Tracked via X Pixel Download event |
| Custom Events | conversion_custom_web | Advertiser-defined custom conversion events | Tracked via X Pixel Custom event |
| App Installs | mobile_conversion_installs | App installation events from mobile measurement partners | Requires MMP integration (AppsFlyer, Adjust, Branch, etc.) |
| App Purchases | mobile_conversion_purchases | In-app purchase events | Revenue from app purchases attributed to your X ads |
| Cost Per Conversion | cost_per_conversion | Average cost per conversion event (all types) | Spend ÷ Total Conversions |
| Conversion Rate | conversion_rate | Percentage of clicks that resulted in a conversion | (Conversions ÷ Clicks) × 100 |
| Post-Click Conversions | conversion_post_click | Conversions from users who clicked the ad | Configurable window: 1, 7, 14, or 30 days post-click |
| Post-View Conversions | conversion_post_view | Conversions from users who viewed but did not click the ad | Configurable window: 1, 7, 14, or 30 days post-view |
Engagement Metrics
Engagement metrics on X are exceptionally granular, reflecting the platform's conversation-driven nature. Users can interact with promoted tweets in many ways beyond clicking — liking, retweeting, replying, following, and exploring content in detail. These metrics help you understand how your content performs within the X conversation ecosystem.
| Metric | API Field | Description |
|---|---|---|
| Likes | likes | Number of times users liked your promoted tweet |
| Retweets | retweets | Number of times users retweeted (reposted) your promoted tweet |
| Quote Tweets | quote_tweets | Number of times users quoted your promoted tweet with their own commentary |
| Replies | replies | Number of direct replies to your promoted tweet |
| Follows | follows | New followers gained as a result of your promoted tweet |
| Profile Clicks | profile_clicks | Clicks on your profile name, avatar, or username in the promoted tweet |
| URL Clicks | url_clicks | Clicks on URLs within the tweet text or card |
| Hashtag Clicks | hashtag_clicks | Clicks on hashtags within your promoted tweet |
| Detail Expands | detail_expands | Clicks to expand and view the full tweet and replies |
| Media Views | media_views | Views of images, GIFs, or video thumbnails in the tweet |
| Media Engagements | media_engagements | Clicks to interact with media (expand image, play video, click carousel) |
| App Clicks | app_clicks | Clicks to the app store from app install cards |
| Email Tweet | email_tweet | Times users shared the promoted tweet via email |
| Cost Per Follow | cost_per_follow | Average cost to acquire a new follower |
| Cost Per Like | cost_per_like | Average cost per like on your promoted tweet |
| Cost Per Retweet | cost_per_retweet | Average cost per retweet of your promoted tweet |
Video Metrics
Video metrics measure how users engage with video content in your promoted tweets. X provides detailed view and completion data across multiple thresholds, helping you understand viewing behavior from initial impressions through full completion. These metrics are essential for optimizing video creative strategy.
| Metric | API Field | Description | Notes |
|---|---|---|---|
| Video Views | video_total_views | Total video views (2+ seconds at 50%+ viewability) | X's standard view threshold: 2 seconds with 50% of the video in view |
| Video View Rate | video_view_rate | Percentage of impressions resulting in a video view | (Video Views ÷ Impressions) × 100 |
| 3-Second Video Views | video_views_3s | Video plays of at least 3 seconds at 100% viewability | Stricter than the 2-second threshold — requires full viewability |
| Video Watched 25% | video_25_watched | Times the video was watched through 25% of its duration | First quartile completion — measures opening hook effectiveness |
| Video Watched 50% | video_50_watched | Times the video was watched through 50% of its duration | Midpoint completion — indicates sustained viewer interest |
| Video Watched 75% | video_75_watched | Times the video was watched through 75% of its duration | Third quartile — strong engagement signal |
| Video Watched 100% | video_100_watched | Times the video was watched to full completion | Complete view — highest video engagement level |
| Completed Views | video_completed_views | Total completed video plays (same as 100% watched) | Duplicate of video_100_watched for convenience |
| Cost Per View (CPV) | cost_per_video_view | Average cost per video view (2-second threshold) | Spend ÷ Video Views |
| Cost Per 3s View | cost_per_3s_view | Average cost per 3-second video view | Spend ÷ 3-Second Video Views |
| Cost Per Completed View | cost_per_completed_view | Average cost per fully completed video view | Spend ÷ Completed Views |
| Video Content Starts | video_content_starts | Number of times the video began playing (any duration) | Includes autoplay starts in the timeline |
Audience Breakdowns
Audience breakdowns let you segment your metrics by various user attributes and behavioral dimensions. These breakdowns are essential for understanding which segments of your audience respond best to your ads and where to allocate budget for maximum impact.
Demographic Breakdowns
| Breakdown | API Field | Description |
|---|---|---|
| Age | age | Age range: 13-17, 18-24, 25-34, 35-49, 50-54, 55-64, 65+ |
| Gender | gender | Male, Female, or Unspecified |
| Language | language | User interface language or detected tweet language |
Geographic Breakdowns
| Breakdown | API Field | Description |
|---|---|---|
| Country | country | Country by ISO code (US, GB, JP, etc.) |
| Region | region | State or region within a country |
| Metro Area | metro | Metropolitan area or designated market area |
| City | city | City-level geographic breakdown |
Device and Platform Breakdowns
| Breakdown | API Field | Description |
|---|---|---|
| Device Type | device | Mobile, Desktop, or Tablet |
| Platform | platform | iOS, Android, Desktop Web, or Mobile Web |
| Carrier | carrier | Mobile carrier (when available) |
Interest and Behavioral Breakdowns
| Breakdown | API Field | Description |
|---|---|---|
| Interests | interest | Performance by interest category (Technology, Sports, Business, etc.) |
| Conversation Topics | conversation_topic | Performance by conversation topic users engage with on X |
| Follower Look-Alikes | follower_lookalike | Performance by users similar to specified account followers |
| Keyword | keyword | Performance by targeted keyword that triggered the ad |
How to Use X Metrics for Campaign Optimization
Selecting the right metrics for your specific campaign objectives is essential for effective optimization on X. Here's a practical framework for each campaign type.
For reach and awareness campaigns
Focus on impressions, reach, frequency, CPM, and engagement rate. On X, a healthy engagement rate for promoted tweets is 1-3%. Monitor frequency to prevent ad fatigue — X's real-time feed environment means users can see the same promoted tweet multiple times in a single session.
For traffic campaigns
Prioritize link clicks (URL clicks), link CTR, and cost per link click. Do not confuse total engagements with traffic-driving clicks — likes, retweets, and detail expands do not send users to your website. Also monitor website page views via the X Pixel to measure actual landing page loads, which will be lower than link clicks due to bounces.
For conversion campaigns
Track cost per conversion, conversion rate, and post-click vs. post-view conversion ratios. Compare attribution windows (1-day, 7-day, 14-day, 30-day) to understand the typical conversion lag for your product. Break down by conversation topic and interest to find which audience segments convert at the best rates.
For video view campaigns
Use 3-second views (not the broader 2-second metric) for measuring genuine attention. Track the quartile completion dropoff (25% → 50% → 75% → 100%) to identify where viewers lose interest. A steep drop between 25% and 50% signals a weak middle section. Monitor CPV and cost per completed view to optimize for video efficiency.
For follower campaigns
Track follows, cost per follow, and the ratio of follows to profile clicks. If many users click your profile but don't follow, your profile may need optimization. Monitor retweets and likes as secondary signals — they indicate content quality and can drive organic follow growth beyond your paid campaign.
Common Mistakes When Analyzing X Ads Data
X's engagement-centric model creates specific pitfalls that advertisers coming from other platforms often encounter. Avoiding these mistakes will save you from flawed analyses and bad optimization decisions.
1. Conflating engagements with website traffic
The "engagements" metric on X includes likes, retweets, replies, follows, profile clicks, hashtag clicks, detail expands, and media views — most of which keep users on X rather than driving them to your website. When measuring traffic, always use URL clicks specifically. The gap between total engagements and URL clicks is typically 5-15x.
2. Ignoring the engagement rate benchmark
X's engagement rates are naturally higher than other platforms because the metric includes so many interaction types. A 2% engagement rate on X is not comparable to a 2% CTR on Meta — they measure fundamentally different things. Benchmark engagement rates for your industry on X specifically, not against cross-platform averages.
3. Undervaluing retweets and organic amplification
Retweets extend your paid reach at no additional cost. A promoted tweet that gets retweeted delivers free impressions to the retweeter's followers. Track the ratio of organic impressions (from retweets) to paid impressions to understand the amplification effect. High retweet rates can dramatically reduce your effective CPM.
4. Using 2-second video views as a quality metric
The default video view metric (2 seconds at 50% viewability) includes autoplay views from users scrolling past. For measuring genuine viewer interest, use 3-second views (100% viewability) or the 25% completion metric as your baseline. The completion rate funnel (25% → 50% → 75% → 100%) provides the most accurate picture of video engagement quality.
5. Averaging cost-per-result metrics across campaigns
CPE, CPC, CPV, and cost-per-conversion are all ratio metrics that cannot be accurately averaged across campaigns or line items. A campaign with $1.00 CPE on 10 engagements and another with $0.50 CPE on 1,000 engagements should not be averaged to $0.75 CPE. Sum total spend and total results, then divide for the accurate blended metric.
6. Not segmenting by placement
X Ads can deliver across the main timeline, search results, profile pages, and the X Audience Platform (publisher network). Performance varies dramatically across these placements. Timeline placements typically have higher engagement rates but also higher costs. Always break down by placement to understand where your budget delivers the best results, and consider excluding underperforming placements.
