Contact Support

Custom data attributes let you track specific link clicks and button interactions as GA4 events — without writing any JavaScript. Just add data-inpipe-* attributes to your HTML elements, and inPIPE handles the rest.

This is ideal for tracking actions like generate_lead, select_item, sign_up, or any other GA4 event directly from your page elements.

How It Works #

  1. Add data-inpipe-event="yes" to any link or button you want to track
  2. Set data-inpipe-event-name to the GA4 event name (e.g. generate_lead)
  3. Add any optional GA4 parameters as additional data-inpipe-* attributes
  4. inPIPE detects the click, collects the attributes, enriches the data, and sends it through the Transmute Engine to your connected platforms

Any element without data-inpipe-event="yes" is treated as a regular click and ignored by inPIPE.

The Naming Convention #

Attribute names follow a simple rule:

  • HTML attributes use hyphens: data-inpipe-item-list-id
  • GA4 parameter values use underscores: select_item, starter_plan

The mapping is automatic — strip data-inpipe-, convert hyphens to underscores, and you get the GA4 parameter name:

data-inpipe-event-name    →  event_name
data-inpipe-item-id       →  item_id
data-inpipe-item-list-id  →  item_list_id

No lookup table needed. The attribute name is the GA4 parameter name in HTML-friendly format.

Required Attributes #

AttributeValuePurpose
data-inpipe-eventyesMarks this element as a tracked event (required)
data-inpipe-event-nameGA4 event nameThe event to send, e.g. select_item, generate_lead

Optional GA4 Parameters #

Add any of these attributes to pass extra data with your event. All are optional.

AttributeGA4 ParameterExample Value
data-inpipe-item-iditem_idstarter_plan
data-inpipe-item-nameitem_nameStarter Plan
data-inpipe-item-categoryitem_categorypricing
data-inpipe-item-list-iditem_list_idpricing_table
data-inpipe-item-list-nameitem_list_namePricing Plans
data-inpipe-valuevalue29
data-inpipe-currencycurrencyUSD
data-inpipe-methodmethodbutton_click
data-inpipe-content-typecontent_typeplan
data-inpipe-promotion-idpromotion_idsummer_2025
data-inpipe-promotion-namepromotion_nameSummer Sale

For the full list of GA4 event parameters, see Google’s GA4 event reference.

Enrichment #

By default, inPIPE enriches your event with server-side context before sending it to the Transmute Engine:

  • User ID, Client ID, Session ID
  • Page location, page title, page referrer
  • UTM parameters from the session
  • WooCommerce customer data (if available)
  • Timestamp and engagement time

If you already have your own data and do not want enrichment, set data-inpipe-enrich=false. The event will be forwarded to Transmute exactly as provided.

ModeAttributeBehaviour
Enriched (default)data-inpipe-enrich=true or omittedinPIPE adds server-side context automatically
Pass-throughdata-inpipe-enrich=falseData is forwarded as-is, no enrichment

Examples #

Track a lead — Contact Us button #

The simplest setup. Just the event gate and event name — inPIPE enriches everything else automatically.

<a href=/contact
   data-inpipe-event=yes
   data-inpipe-event-name=generate_lead>
   Contact Us
</a>

Track a pricing selection #

Tracks which plan a user clicks, with full item details for GA4 reporting.

<a href=/checkout/growth
   data-inpipe-event=yes
   data-inpipe-event-name=select_item
   data-inpipe-item-id=growth_plan
   data-inpipe-item-name=Growth Plan
   data-inpipe-item-category=pricing
   data-inpipe-item-list-id=pricing_table
   data-inpipe-item-list-name=Pricing Plans
   data-inpipe-value=99
   data-inpipe-currency=USD>
   Get Growth — /mo
</a>

Track a demo request #

<a href=/demo
   data-inpipe-event=yes
   data-inpipe-event-name=generate_lead
   data-inpipe-method=demo_request
   data-inpipe-content-type=demo>
   Request a Demo
</a>

Track a feature page click #

<a href=/features/transmute
   data-inpipe-event=yes
   data-inpipe-event-name=view_item
   data-inpipe-item-id=transmute_engine
   data-inpipe-item-name=Transmute Engine
   data-inpipe-item-category=features>
   Learn More
</a>

Track a newsletter signup #

<button
   data-inpipe-event=yes
   data-inpipe-event-name=sign_up
   data-inpipe-method=newsletter
   data-inpipe-content-type=email>
   Subscribe
</button>

Track a promo banner (pass-through, no enrichment) #

<a href=/sale
   data-inpipe-event=yes
   data-inpipe-enrich=false
   data-inpipe-event-name=select_promotion
   data-inpipe-promotion-id=summer_2025
   data-inpipe-promotion-name=Summer Sale
   data-inpipe-value=0>
   Shop the Summer Sale
</a>

Common GA4 Event Names #

These are standard GA4 event names you can use with data-inpipe-event-name:

Event NameUse Case
generate_leadContact forms, demo requests, enquiry buttons
select_itemClicking on a product, plan, or listing
view_itemClicking through to a product or feature page
sign_upNewsletter signups, account registrations
select_promotionClicking on a promo banner or offer
add_to_cartAdding a product to cart
begin_checkoutStarting the checkout process

Tips #

  • You can use custom data attributes on any HTML element — links, buttons, divs, images
  • Only elements with data-inpipe-event=yes are tracked. Everything else is ignored.
  • You only need data-inpipe-event and data-inpipe-event-name at minimum. All other parameters are optional.
  • Any new data-inpipe-* attribute you add is automatically mapped to its GA4 equivalent — no code changes required
  • Use enrichment (the default) unless you have a specific reason to pass data through raw

Adding Custom Attributes in Page Builders #

Most page builders support custom data attributes. Here is how to add data-inpipe-* attributes in each builder:

Page BuilderSupportDocumentation
Bricks BuilderBuilt-in (Style > Attributes panel)Bricks Custom Attributes
Elementor ProBuilt-in (Advanced > Custom Attributes, key|value format)Custom Attributes · Custom Link Attributes
Divi 5Built-in (Advanced > Attributes, can target wrapper or button)Divi 5 Custom Attributes · ARIA & Data Attributes
Gutenberg / Block EditorRequires pluginAttributes for Blocks plugin — adds an attributes panel to any block
Kadence BlocksCSS classes and IDs only — no custom data attributes nativelyKadence Classes & IDs · Feature request
Workaround: use the Attributes for Blocks plugin above, or an HTML block
Plain HTML / Classic EditorFull support — add attributes directlyNo plugin needed. Add attributes in the Text or Code tab.

Related Docs #


What are your feelings

Updated on February 21, 2026