Click Interaction
When to Use
Trigger this event for any click interaction you want to track on your website — button clicks, link clicks, form submissions, video plays, accordion toggles, tab switches, or any other meaningful UI interaction.
This is a universal event designed to capture all types of click-based interactions through a standardized set of properties, replacing the need for multiple custom event names.
Complete Reference
event object required
name string required
Use only static value click for event.name.
name: "click"
value number
Monetary value associated with the interaction. Send only when relevant (e.g. add to cart value, download value). Do not send 0.
value: 149.99
currency string
Currency code. Send only together with value.
currency: "EUR"
properties object required
Interaction details. See property reference below.
element_name string required
Logical name of the element using {functionality}_{specification} pattern.
element_name: "signup_newsletter"
// Examples: download_catalog, share_facebook, phone_click,
// cart_add_product, video_play_hero, filter_price_range
element_action string required
What action the interaction performs.
element_action: "form_submit"
// Values: click, submit, download, expand, close, copy,
// scroll_to, play, pause, toggle, select
element_category string required
Type of UI element.
element_category: "button"
// Values: button, link, image, card, tab, accordion, form,
// icon, banner, video, slider, menu_item, badge, modal
element_position string recommended
Location on the page using {section}_{placement} pattern.
element_position: "footer_middle"
// Examples: header_left, hero_center, body_top, sidebar_top,
// footer_right, modal_center, sticky_bottom, floating
element_text string recommended
Visible text of the element (max 100 characters). For images without text, use alt text or leave empty.
element_text: "Subscribe now"
element_destination_url string
Full destination URL with protocol. For downloads, use the file URL. Do not send for buttons without a destination.
element_destination_url: "https://example.com/success"
element_destination_name string
Name of the destination or associated partner.
element_destination_name: "partner_name"
// Examples: facebook, google, emag, altex, pdf_catalog
element_index number
Position in a group: carousel, grid, list (indexing from 1). Do not send for unique elements.
element_index: 2
element_variant string
Visual variant or A/B test identifier.
element_variant: "green_cta"
// Examples: variant_a, variant_b, compact, with_icon, text_only
element_content_group string
Page type where the interaction occurred.
element_content_group: "blog_article"
// Values: homepage, pdp, plp, category, blog_article, cart,
// checkout, landing_page, search_results, contact, account, faq
context object
url string required-if-applicable
Collected automatically for standard websites. Required only for SPA applications where URL changes don't trigger automatic page context updates.
url:"https://shop.example.com/products/laptop?color=silver&storage=512gb&utm_source=google"
URL Parameter Sensitivity: Be mindful of sensitive information in URLs. Query parameters may contain personal identifiers, session tokens, or private information that should be handled according to privacy regulations.
page_type string recommended
Type of page (product, home ...)
page_type: "product"
environment string recommended
Allowed values: prod, dev
environment: "prod"
user object recommended
id string recommended
Unique customer identifier in your system.
id: "CUSTOMER_INTERNAL_ID"
email string recommended
Customer email address(es) provided in plaintext or as SHA-256 hashed values.
email: "[email protected]"
// or
email: "3e1ufd1rdnh8l1rfz6xlreyw2yryd4zrf8zsk1pxh2x8wbsp2mw1g93rs5nx68dq"
phone string recommended
Customer phone number(s) in E.164 format (plaintext) or as SHA-256 hashed values.
phone: "+40712345678"
// or
phone: "unw5r66oikql4n4tlg2c54bkd2npephsbwwhxuoxreu6ph8uv6k424y9x15opy9y"
first_name string recommended
Customer first name
first_name: "John"
last_name string recommended
Customer last name
last_name: "Doe"
country string
Country name or ISO country code
country: "Romania"
region string recommended
State, province, or region name
region: "Bucuresti"
city string recommended
City or locality name
city: "Bucuresti"
street string
Street address including number
street: "Strada Principala 1"
postal_code string
Postal code or ZIP code
postal_code: "700000"
orders_total_number number recommended
Cumulative number of orders placed by this user
orders_total_number: 5
orders_canceled_number number recommended
Cumulative number of orders placed and canceled by this user
orders_canceled_number: 0
orders_total_value number recommended
Cumulative lifetime user orders value (decimal format: 2500.50)
orders_total_value: 1234.99
orders_refunded_value number recommended
Cumulative lifetime user orders value canceled (decimal format: 2500.50)
orders_refunded_value: 250.99
predicted_value number
Predicted lifetime value of a customer for your business
predicted_value: 100.99
created_at number recommended
Timestamp in milliseconds since Unix epoch representing the first time the user was recorded
created_at: 1754926521690
properties object recommended
Custom Customer Properties Examples
Use the properties object to store custom user attributes, with property names defined by each business as needed, that enable advanced segmentation, personalization, and analytics across your marketing campaigns.
- E-commerce Customer
- B2B Lead/Customer
- Subscription Service
- Content Platform
properties: {
customer_type: "returning",
membership_level: "platinum",
preferred_category: ["electronics", "fashion"],
last_purchase_date: "2024-12-15",
average_order_value: "350.00",
payment_method_preference: "card",
registration_date: "2023-06-15"
}
properties: {
company_size: "enterprise",
industry: "fintech",
job_title: "marketing_director",
decision_maker: "true",
budget_range: "50000-100000",
lead_source: ["linkedin", "webinar"],
qualification_status: "qualified",
sales_stage: "proposal"
}
properties: {
subscription_tier: "premium",
billing_cycle: "annual",
feature_usage: ["analytics", "reporting", "api"],
trial_user: "false",
renewal_date: "2025-06-30",
support_level: "priority",
usage_frequency: "daily"
}
properties: {
content_preferences: ["technology", "business"],
engagement_level: "high",
newsletter_subscriber: "true",
social_media_follower: "true",
content_consumption: "premium",
device_preference: ["mobile", "desktop"],
timezone: "Europe/Bucharest"
}
Examples
- Complete
- Minimal
{
"event": {
"name": "click",
"value": 149.99,
"currency": "EUR",
"properties": {
"element_name": "signup_newsletter",
"element_action": "form_submit",
"element_category": "button",
"element_position": "footer_middle",
"element_text": "Subscribe now",
"element_destination_url": "https://example.com/success",
"element_destination_name": "newsletter",
"element_index": 2,
"element_variant": "green_cta",
"element_content_group": "blog_article"
}
},
"context": {
"url": "https://example.com/blog/best-cameras-2025",
"page_type": "blog_article",
"environment": "prod"
},
"user": {
"id": "CUST_12345",
"email": "[email protected]",
"phone": "+40712345678",
"first_name": "Alexandru",
"last_name": "Popescu",
"country": "RO",
"region": "Brasov",
"city": "Brasov"
}
}
window.reshape = window.reshape || [];
reshape.push({
"event": {
"name": "click",
"properties": {
"element_name": "download_catalog",
"element_action": "download",
"element_category": "button"
}
}
});
Common Use Cases
- Social Share
- Video Play
- File Download
- Carousel Click
window.reshape = window.reshape || [];
reshape.push({
"event": {
"name": "click",
"properties": {
"element_name": "share_facebook",
"element_action": "click",
"element_category": "icon",
"element_position": "body_bottom",
"element_destination_name": "facebook",
"element_content_group": "blog_article"
}
}
});
window.reshape = window.reshape || [];
reshape.push({
"event": {
"name": "click",
"properties": {
"element_name": "video_play_hero",
"element_action": "play",
"element_category": "video",
"element_position": "hero_center",
"element_text": "Watch product demo",
"element_content_group": "pdp"
}
}
});
window.reshape = window.reshape || [];
reshape.push({
"event": {
"name": "click",
"properties": {
"element_name": "download_catalog",
"element_action": "download",
"element_category": "link",
"element_position": "body_top",
"element_text": "Download PDF Catalog",
"element_destination_url": "https://cdn.example.com/catalog-2025.pdf",
"element_destination_name": "pdf_catalog",
"element_content_group": "category"
}
}
});
window.reshape = window.reshape || [];
reshape.push({
"event": {
"name": "click",
"value": 299.99,
"currency": "EUR",
"properties": {
"element_name": "promo_banner_click",
"element_action": "click",
"element_category": "banner",
"element_position": "hero_center",
"element_text": "Summer Sale - 30% Off",
"element_destination_url": "https://example.com/summer-sale",
"element_index": 3,
"element_variant": "variant_b",
"element_content_group": "homepage"
}
}
});
Naming Convention
element_name
Use the pattern {functionality}_{specification}:
| Example | Meaning |
|---|---|
signup_newsletter | Newsletter signup action |
download_catalog | Catalog download |
share_facebook | Facebook share |
video_play_hero | Hero section video play |
filter_price_range | Price range filter |
cart_add_product | Add product to cart |
phone_click | Phone number click |
accordion_faq | FAQ accordion toggle |
element_position
Use the pattern {section}_{placement}:
| Example | Meaning |
|---|---|
header_left | Left side of header |
hero_center | Center of hero section |
body_top | Top of main content |
sidebar_top | Top of sidebar |
footer_right | Right side of footer |
sticky_bottom | Sticky bar at bottom |
floating | Floating element |
modal_center | Center of modal |