Merkle
What Is Merkle?
Merkle is a global performance marketing agency specializing in delivering personalized customer experiences across digital channels. With expertise in data, technology, and analytics, Merkle helps brands drive growth through data-driven marketing strategies, customer relationship management (CRM), and media services. It offers solutions in areas like customer experience management, loyalty programs, and performance marketing.
Product Type: Advertising
Integration Type: Starter Kit & ID Sync
Event Source Type: Web
Event Scope: Full-Funnel Events
Capabilities
- MetaRouter Anonymous ID – Passes the MetaRouter-generated anonymous ID for user tracking.
- Sends Event Data – Can be mapped to forward various event types, including page views, user interactions, and conversions, to Merkle.
- By default, the starter kit is mapped to the "page" event. Contact your Merkle representative for guidance on mapping additional events.
- User Information – Captures details like IP address, user agent, and email (if available) from event data.
- Event Metadata – Forwards event details such as timestamps, message IDs, and original event properties.
- Enriches Event Data – Adds contextual details like page URL and event properties before sending to Merkle.
- Optional Identity Sync – Retrieves the Merkury ID and confidence score, which can be used for additional third-party integrations.
Identity Sync
- Sync Available: Yes
- Required for Starter Kit: No
- Prerequisites: None
- Documentation: See Additional Merkle Sync Documentation
Sync Details
- The Merkle ID Sync retrieves a unique Merkury user identifier (
hmid) and a confidence score for identity resolution. - The
hmidis not required for event-based use cases, so the Identity Sync is optional for event tracking. - If accepted by third-party vendors, the
hmidand confidence score can be used for additional integrations.
Starter Kit Setup Guide
1. Deploy the Merkle Sync (Optional)
- The Merkle sync is optional for event tracking. To collect the sync values (e.g.,
hmid), you must implement a Merkle ID sync. Refer to the following documentation to complete the setup: Merkle - ID Sync Guide.
2. Gather Credentials
- Contact your Merkle representative to obtain your Account ID.
3. Add a Merkle Integration
- From the integration library, add a Merkle integration. Then, fill out the Connection Parameters:
| Connection Parameter | Description |
|---|---|
ACCOUNT_ID | Your account ID gathered from your Merkle representative. |
4. Configure Event Mapping
- MetaRouter provides all of the event mappings that Merkle integrations typically require. You may add custom events, parameters, or mappings in accordance with Merkle's API documentation.
5. Deploy to Pipeline
- In the Pipelines tab, add your Merkle integration.
- Select the correct integration revision.
- Click Add Integration to finalize deployment.
Event Mappings
Global
Global mappings will be applied to all events. If your parameter names do not match the Expected Inputs provided, you will need to overwrite the Inputs provided with your own.
| Output Key | Description | Expected Input |
|---|---|---|
anonymousId Required | String: Unique identifier for a user. | anonymousId |
type | String: Type of event being tracked. | Expression – returns 'viewpage' when type is page, otherwise input.type |
userAgent | String: User agent string from the browser. | context.userAgent |
pageUrl | String: URL of the page being visited. | Expression – returns properties.url or context.page.url |
ipAddress Required | String: IP address of the user. | context.ip |
rawEmail | String: Raw email address of the user if available. | traits.email |
messageId | String: Unique identifier for the event. | messageId |
event | String: Name of the event being tracked. | event |
originalTimestamp | Timestamp: Original timestamp of the event. | originalTimestamp |
receivedAt | Timestamp: Timestamp when the event was received. | receivedAt |
sentAt | Timestamp: Timestamp when the event was sent. | sentAt |
timestamp | Timestamp: Main event timestamp. | timestamp |
properties | Object: Event-specific properties. | properties |
context.page | Object: Contextual information about the page. | context.page |
context.library | Object: Metadata about the library used for tracking. | context.library |
context.userAgent | Object: User agent forwarded in the context object. | context.userAgent |
context.ip | Object: IP address forwarded in the context object. | context.ip |
context.providers.merkle | Object: Merkle provider data from the sync (such as hmid). | context.providers.merkle |
Event Specific
Page
| Output Key | Description | Expected Input |
|---|---|---|
event | String: Indicates that a page has been loaded. | Enrichment – 'Loaded a Page' |
Required & Recommended Identifiers
These identifiers must be mapped to Merkle in order for successful user matching to occur. Without these IDs, any events sent to Merkle may not be accurately reflected in reporting. For your convenience, required and recommended IDs are mapped as Global parameters to ensure they are added to every event.
| Attribute | Example | Sync Injector Required? |
|---|---|---|
anonymousId Required | 4b0d3f5a-879c-4c8d-a2fa-0a12a1e5e3b4 | No |
ipAddress Required | 192.168.1.100 | No |
userAgent Recommended | Mozilla/5.0 (Windows NT 10.0; Win64; x64) | No |
rawEmail Recommended | [email protected] | No |
Integration Validation
Coordinate with your Merkle representative to confirm that events are being received and processed correctly on their backend.
Updated 2 days ago