select_promotion Event

The select_promotion event tracks when a user clicks or interacts with a promotion — like a homepage banner, seasonal offer, or campaign tile. It's essential for measuring campaign engagement and creative performance.

The select_promotion model

This model captures the interaction and metadata related to the clicked promotion.

Properties

  • Name
    event
    Type
    string
    Description

    Must be set to select_promotion.

  • Name
    user_id
    Type
    string
    Description

    ID of the user interacting with the promotion.

  • Name
    session_id
    Type
    string
    Description

    ID of the current session.

  • Name
    promotions
    Type
    array
    Description

    Array of promotion objects the user interacted with (usually one).

  • Name
    promotions[].promotion_id
    Type
    string
    Description

    Unique ID for the promotion.

  • Name
    promotions[].promotion_name
    Type
    string
    Description

    Name of the promotion.

  • Name
    promotions[].creative_name
    Type
    string
    Description

    Name of the creative.

  • Name
    promotions[].creative_slot
    Type
    string
    Description

    Where the promotion was shown (e.g., banner_top).

  • Name
    promotions[].location_id
    Type
    string
    Description

    Optional — context-specific location ID.


Push event to the dataLayer

dataLayer.push example

dataLayer.push({
  event: 'select_promotion',
  user_id: 'user-001',
  session_id: 'session-xyz987',
  promotions: [
    {
      promotion_id: 'fall-sale-2025',
      promotion_name: 'Fall Sale 2025',
      creative_name: 'Hero Image Banner',
      creative_slot: 'banner_top',
      location_id: 'home_page'
    }
  ]
});

Best Practices

  • Fire this only after an actual user interaction (e.g., click).
  • Align IDs and names with view_promotion for consistency.
  • Use creative_slot to A/B test placements.

Use Cases

The select_promotion event supports:

  • Creative performance analysis
  • Conversion rate optimization
  • Campaign attribution
  • Click-through and engagement reporting

Was this page helpful?