Build robust marketing campaigns on Marketo using rich customer data from your data warehouse
Create Marketo authorization details by navigating to Admin > Launchpoint and selecting a service.
You can find the Base URL in Admin > Integration > Web Services. Only use the part after https:// and before /rest as your base url, e.g.
Click "Add New"
Add any destination name (e.g. "Marketo")
Copy Client ID, Client Secret, and Base URL into form
Click Add Marketo Destination
Hightouch supports the following Marketo sync types:
- Static Lists
- Campaign Trigger
Hightouch supports syncing to both standard and custom Marketo objects. The standard objects that Hightouch supports are:
Hightouch supports the following sync modes for objects:
- Upsert — Upsert mode pushes new objects to Marketo and updates fields that change in your warehouse.
- Update — Update mode updates particular fields on existing objects in Marketo.
Records can be matched from your source to your Marketo object. The fields available to match depend on the object.
You can sync columns from your source to Marketo's fields.
Hightouch supports syncing to custom activities. To sync custom activities they must first be created and approved in Marketo.
You can learn more about creating custom activities in Marketo's docs here.
Hightouch allows you to choose the activity, timestamp, and the lead ID that your Marketo activity is linked to.
Records can be matched from your source to your Marketo activity's primary attribute.
Hightouch allows you to sync data from your source to your Marketo activity's attributes.
Hightouch supports creating and updating Marketo static lists.
Hightouch supports automatically creating a new list for your sync. You can specify a custom name for this list, or Hightouch will use the name of the model.
Here, the name List 1 will be used as the list name:
When creating a new static list in Marketo, you need to select the folder the list will be created in.
Hightouch supports adding an optional description to your Marketo static list.
Hightouch allows you to trigger campaigns through Marketo Campaign API with records in your model.
Before you are able to set up a Hightouch sync to trigger a campaign, you are required to have an active trigger campaign with the
Web Service API as the source in Marketo. See the steps below.
If you haven't already, go to Design Studio to build your email template in your Marketo instance. Before your email template can be used in Hightouch, your draft must be approved.
You can use custom tokens to populate your email template with data from your model.
In the example above, we want to dynamically populate our email subject. See tokens.
- Setup your campaign.
- Setup your trigger.
A. Create a Smart Campaign that you will trigger. Make sure that your campaign belongs to a program.
B. Go to Smart List tab to configure the trigger.
C. Select Campaign is Requested under the triggers.
D. Select Web Service API for source.
- Setup your flow.
A. Go to Flow.
B. Select Email.
C. Select the email template you want to send.
- Setup your qualifications and activate.
A. Go to Schedule.
B. Click on Edit to edit your qualifications.
C. Activate this campaign.
- Setup your trigger.
For additional reference, see Marketo's how-to here.
Hightouch sync will trigger your Marketo Smart Campaign when rows first appear in your sync. This means that Hightouch will trigger your Marketo Smart Campaign for every row in your model on the first time you run your sync or when you do a full resync, and for every new row that is added to your query results in the subsequent syncs.
The Hightouch Marketo destination will not check if an email has been sent to
a distinct lead. This means that if a lead with email
appears in two of the queried rows from your model, then a trigger (emails)
request for each of these rows will be sent to Marketo's API. A total of two
triggers will be sent for
email@example.com. If you wish to only send
emails once per lead, set your qualification settings in Marketo to
Marketo Smart Campaigns are only triggerable for leads that aleady exist in your Marketo instance. You can provide a lead ID or a lead email for every lead that you want to send your email to.
If you are using email for your lead mapping and your leads are not
de-duplicated by email, Hightouch will use the latest lead based on the
createdAt timestamp when performing the lookup.
Use this section to map your tokens with data from your rows. You only need to add mappings for tokens that are used in your email template.
When testing, we recommend that you use an example lead so you can access the test email. You will use this lead to perform dry run tests for the campaign trigger sync.
Before running your sync, we highly recommend testing it with a single row.
A. You can manually overwrite columns of a test row. In our example we are using the
lead_id column to match leads, you need to manually overwrite the
lead_id field to your own
lead_id to send a test email.
B. Once ready, press Sync as added row.
Check the email of the lead for testing to verify that your setup works.
- Code 1003 "Campaign is not part of a program" -> You have to move your campaign into a program.