> ## Documentation Index
> Fetch the complete documentation index at: https://docs.adside.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# Performance compare

> Side-by-side comparison: this window versus the previous period for the account (or one level's active entities), or several objects (≤20) in one window. Deltas are absolute and percent; rates are recomputed from sums, never summed. Costs 2–4 sync stats calls (each ≤7 days).

CLI: `adside x performance compare`



## OpenAPI

````yaml /api-reference/openapi.yaml post /v1/workspaces/{workspaceId}/x/performance/compare
openapi: 3.1.0
info:
  title: Adside API
  version: 1.0.0
  description: >-
    Campaigns, creatives, assets and reporting across your ad accounts. Call it
    with a personal API key as a bearer token, or with the `adside` CLI: each
    page names its command.
servers:
  - url: https://api.adside.ai
    description: Production
security:
  - userAccess: []
tags:
  - name: Account
  - name: Reporting
  - name: Meta
  - name: Google Ads
  - name: LinkedIn
  - name: TikTok
  - name: Reddit
  - name: Snapchat
  - name: X
  - name: Google Tag Manager
  - name: Creatives
  - name: Creative styles
  - name: Media
  - name: Characters
  - name: Assets
  - name: Brands
  - name: Brain
  - name: Research
  - name: Boards
  - name: Artifacts
  - name: Audiences
  - name: Ad comments
  - name: Publications
  - name: Routines
  - name: Skills
  - name: To-dos
  - name: Audit
  - name: Credits
paths:
  /v1/workspaces/{workspaceId}/x/performance/compare:
    post:
      tags:
        - X
      summary: Performance compare
      description: >-
        Side-by-side comparison: this window versus the previous period for the
        account (or one level's active entities), or several objects (≤20) in
        one window. Deltas are absolute and percent; rates are recomputed from
        sums, never summed. Costs 2–4 sync stats calls (each ≤7 days).


        CLI: `adside x performance compare`
      operationId: x.compare_x_performance
      parameters:
        - name: workspaceId
          in: path
          required: true
          schema:
            type: string
            minLength: 1
      requestBody:
        required: false
        content:
          application/json:
            schema:
              $schema: https://json-schema.org/draft/2020-12/schema
              type: object
              properties:
                account_id:
                  description: >-
                    X ads account id (e.g. 18ce55xcrlv). Omit it: it defaults to
                    the ads account this workspace is connected to, and any
                    other account is refused.
                  type: string
                entity:
                  default: ACCOUNT
                  type: string
                  enum:
                    - ACCOUNT
                    - CAMPAIGN
                    - LINE_ITEM
                    - PROMOTED_TWEET
                entity_ids:
                  description: >-
                    Compare these objects side by side in one window (≤20).
                    Without ids: this window vs the previous period.
                  maxItems: 20
                  type: array
                  items:
                    type: string
                    minLength: 1
                metrics:
                  description: >-
                    Friendly metric names: spend, impressions, engagements,
                    clicks, url_clicks, likes, follows, video_total_views,
                    conversion_purchases, … plus derived ones (cpm, cpe, cplc,
                    ctr, engagement_rate, cpv, cpa, roas) computed here.
                    Default: the ENGAGEMENT + BILLING groups. See `adside x
                    metrics list`.
                  type: array
                  items:
                    type: string
                placement:
                  default: ALL_ON_TWITTER
                  type: string
                  enum:
                    - ALL_ON_TWITTER
                    - PUBLISHER_NETWORK
                    - SPOTLIGHT
                    - TREND
                  description: >-
                    One placement per stats request (X accepts a single value).
                    Default ALL_ON_TWITTER; other placements are separate calls.
                preset:
                  description: >-
                    Shortcut for a date range. Default last_7d when no
                    start_date/end_date given.
                  type: string
                  enum:
                    - today
                    - yesterday
                    - last_7d
                    - last_14d
                    - last_30d
                    - this_month
                    - last_month
                start_date:
                  description: First day, YYYY-MM-DD, in the account's time zone.
                  type: string
                  pattern: ^\d{4}-\d{2}-\d{2}$
                end_date:
                  description: >-
                    Last day (inclusive), YYYY-MM-DD, in the account's time
                    zone. The exclusive end X wants is computed for you.
                  type: string
                  pattern: ^\d{4}-\d{2}-\d{2}$
                compare_to:
                  default: previous_period
                  type: string
                  enum:
                    - previous_period
                    - none
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                $schema: https://json-schema.org/draft/2020-12/schema
      security:
        - userAccess: []
components:
  securitySchemes:
    userAccess:
      type: http
      scheme: bearer
      description: >-
        A personal API key (`adside_pat_…`) or a token from `adside login`.
        Either carries the permissions of the person it belongs to.

````

This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.