---
title: "Connect to Marketo"
slug: "/help/integrations/marketo/connect-marketo"
last_updated: "2025-10-22T19:34:00Z"
zendesk_id: 21438773149203
zendesk_url: "https://help.walnut.io/hc/en-us/articles/21438773149203-Connect-to-Marketo"
locale: "en-us"
product: "integrations"
topic: "marketo"
displayed_sidebar: "integrationsSidebar"
sidebar_position: 1
---

## **Overview**

Integrating Walnut with Marketo lets you seamlessly incorporate demo engagement data into your marketing and sales workflows — giving your team a richer, more actionable view of how prospects interact with your demos.

The **Marketo** **Integration** — _outlined in this setup guide_ — enriches **identified** **demo** **and** **playlist** **sessions** for both **new** **and** **existing** **leads**, adding detailed engagement data such as views, completions, and session-level insights.

The Marketo integration supports multiple **[primary identification methods](https://help.walnut.io/hc/en-us/articles/31557610273299-Guide-to-Walnut-Integrations-Analytics#h_01K18SPACSHEXKKT41APMX51V9)**, including **[Marketo lead forms](https://help.walnut.io/hc/en-us/articles/22080928117651)**, **[Walnut email gates](https://help.walnut.io/hc/en-us/articles/32109560044051)**, or [**URL parameters**](https://help.walnut.io/hc/en-us/articles/43383112778259).

**Key features of this integration include:**

-   **Automatic lead enrichment** — Demo and playlist session data (e.g., views, duration, activity) are synced to lead records under Person and Custom attributes.
-   **Flexible lead capture** — [Embed Marketo forms](https://help.walnut.io/hc/en-us/articles/22080928117651) directly in demos or use Walnut’s [built-in email gates](https://help.walnut.io/hc/en-us/articles/32109560044051) to generate new leads.
-   **Full-funnel visibility** — Sync [engagement data](https://help.walnut.io/hc/en-us/articles/22100753233043) with existing leads for a complete view of how prospects interact with your demos across the buyer journey.

:::note[⚠️ Note]

You can use the **Marketo integration** with or without a **Marketo lead form**, or use a lead form independently to collect **form submissions only** (without enriched session data).  
  
When a lead form isn’t used, sessions identified through another **primary identification method** — such as a **Walnut email gate** or **URL parameter** — will still sync to Marketo once the viewer is identified.

:::

---

## **Before You Start**

Before proceeding with the **Walnut `<>` Marketo Integration** setup, please ensure the following:

1.  **API User Permissions & Setup**  
    Confirm that the correct **Marketo API user** is assigned when setting up the new service in:
    
    ```
    Walnut → Integrations → Marketo → Authenticate
    ```
    
    **The API user must have the following permissions enabled:**
    
    -   Read-Write Activity
    -   Read-Write Activity Metadata
    -   Read-Write Person
    -   Read-Write Schema Custom Field
    -   Read-Write Schema Standard Field
2.  **Custom Activity Availability**  
    Make sure your Marketo instance has **at least one (1) available custom activity slot** while the integration is active. This is required for the integration to function properly.

:::note[Note]

There’s no need to manually create a custom activity or new custom fields in Marketo. Once the integration is set up, Walnut automatically creates and manages the required **custom activity and fields**.

:::

---

## **Authenticate Your Marketo Account**

Follow these steps to connect Walnut to your Marketo environment and enable data syncing.

### **Step 1: Connect to Marketo**

-   From the **Integrations** page in Walnut, find **Marketo** and click **Learn more**.

![Screenshot 2025-10-22 at 2.01.04 PM.png](pathname:///images/3aa362de2e1af663.png)

-   Click **Connect** within the modal. This opens the **Marketo authentication** window.

![Screenshot 2025-10-22 at 2.53.33 PM.png](pathname:///images/d420402ac48d60a5.png)

### **Step 2: Create a New Authentication**

Click **New authentication**, then enter the following details:

-   **Your authentication name** — for example, _Crunchy AI’s Marketo account_.
-   **API endpoint domain\*** — your Marketo REST domain (see note below).
-   **Client ID\*** — from your Marketo **Admin → LaunchPoint → View Details**.
-   **Client Secret\*** — from the same LaunchPoint details view.

          ![Screenshot 2025-10-22 at 3.02.43 PM.png](pathname:///images/079398fbd1432b41.png)

-   Once all fields are complete, click **Create**, then **Finish** to complete authentication. You’ll see a confirmation once your Marketo connection is active.
-   Next, proceed to the **Configure** tab to set up your _optional configurations_: [**Generate Leads Directly From Demos**](#h_01K86HJ2V52KPWSNZAS9587WFX) and [**Handle Bounced Sessions**](#h_01K86HJ5X8PPMJW5ZAJXC5XBEG).

:::warning[⚠️ Important]

You can find the **API endpoint domain** in your Marketo instance under **Admin → Web Services**. **Do not include `/rest` or `/identity` at the end of the URL.**

-   **Correct:** `[https://123-ABC-456.mktorest.com](https://123-ABC-456.mktorest.com)`
-   **Incorrect:** `https://123-ABC-456.mktorest.com/rest`, `https://123-ABC-456.mktorest.com/identity`

:::

---

## **Test Your Marketo Integration**

:::note[⏱ Sync Timing]

-   **Form** **submissions** typically appear in Marketo almost instantly.
-   **Enriched** **demo and playlist** **session** **data** and **custom** **fields** may take a few hours to populate.
-   Syncing begins **30 minutes after demo or playlist inactivity** to ensure full session capture.

:::

Once connected, Walnut **automatically creates and populates custom fields** in Marketo, visible under **Person → Info**. You’ll also see **Walnut** **Demo** **Viewed**, **Walnut** **Playlist** **Viewed**, and **Change** **Data** **Value** activities under **Person → Activity Log**, containing enriched session-level data and updates to Walnut-related fields.

-   The custom fields appear under **Person → Info**, providing a snapshot of overall Walnut engagement.

![person info.png](pathname:///images/cef4fa3fd3f7bfe9.png)

-   **Under Person → Activity Log**, you’ll find:
    -   **Walnut Demo Viewed** and **Walnut** **Playlist** **Viewed** activities containing enriched session-level data.
    -   **Change** **Data** **Value** entries reflecting updates to Walnut-related fields.

![Screenshot 2025-10-22 at 1.38.55 PM.png](pathname:///images/a7e69ff0df209242.png)

:::warning[Important]

The following session types will _not_ sync with Marketo:

-   Demo or playlist sessions **without a [primary email identification method](https://help.walnut.io/hc/en-us/articles/31557610273299-Guide-to-Walnut-Integrations-Analytics#h_01K18SPACSHEXKKT41APMX51V9)**
-   **Bounced** sessions (opened but no engagement or no email address entered)
-   **Anonymous** sessions
-   Sessions with **non-work emails** (e.g., Gmail, Hotmail, Outlook)
-   Sessions using **internal or Walnut emails** (e.g., _@yourcompany.com, @walnut.io_)

:::

---

## **Optional Configurations**

Once your Marketo account is connected, open the **Configure** tab to control how Walnut sends data to Marketo.

**There are two optional configurations available:**

-   [Generate Leads Directly From Demos](#h_01K86HJ2V52KPWSNZAS9587WFX)
-   [Handle Bounced Sessions](#h_01K86HJ5X8PPMJW5ZAJXC5XBEG)

### Generate Leads Directly From Demos

This setting allows you to use a built-in [**Walnut** **email** **gate**](https://help.walnut.io/hc/en-us/articles/32109560044051) instead of a lead form, enabling leads to flow directly into Marketo as soon as viewers submit their email. To enable this feature, toggle Generate Leads Directly From Demos on, and make sure **“Collect viewers’ emails”** is active in your demo settings.

![Screenshot 2025-10-22 at 2.02.08 PM.png](pathname:///images/d47bfd11ccab97fe.png)

### Handle Bounced Sessions

When enabled, Walnut will send a notification to Marketo if a session is bounced (for example, when a viewer opens a demo but leaves before engaging). This helps your marketing automation workflows accurately track low-intent or incomplete sessions.

![Screenshot 2025-10-22 at 2.02.28 PM.png](pathname:///images/6c63b209d87cb2ed.png)

---
