Set up Iterable templates for Jacquard

Prev Next

For Iterable marketers. Link the Jacquard data feed to a template once, then add Jacquard fields with fallbacks anywhere in the email.

Placeholders: example values (for example names in code) and values in angle brackets are account-specific. Your Jacquard contact provides them.

Existing customers: don’t change existing templates or unlink their feeds. Use this guide for new touchpoints only.

Template setup

For the team that builds Iterable templates.

1.1 Before you start

  1. Prerequisites

    • Technical setup complete, including the data feed for this touchpoint.

    • Touchpoint created (or imported) and content approved in Jacquard.

  2. Get the field keys

    From the touchpoint’s Connect tab. Keys match the response, for example subject_line, preheader.

1.2 Link the data feed to the template

  1. Open the template

    In the email template, go to Settings > Data Feeds.

  2. Select the Jacquard feed

    • Select the Jacquard data feed for this touchpoint.

    • Leave Merge the data feed and user contexts unticked. Feed fields then use [[ ]].

    • Turn caching off so each recipient gets their own variant.

  3. Once per template

    Link the feed once. Its fields can then be used anywhere in the email.

1.3 Add Jacquard fields to the email

Part

Reference

Subject line

[[content.fragments.subject_line]]

Preheader

[[content.fragments.preheader]]

Other parts (headline, CTA, body)

[[content.fragments.field_key]], key from the Connect tab

  1. Subject line

    Add to the subject line:

    [[#if content.fragments.subject_line]]
    [[content.fragments.subject_line]]
    [[else]]
    YOUR CONTROL COPY
    [[/if]]
  2. Preheader

    Add to the preheader:

    [[#if content.fragments.preheader]]
    [[content.fragments.preheader]]
    [[else]]
    YOUR CONTROL COPY
    [[/if]]
  3. Other parts

    Use the same pattern for each part Jacquard controls, for example:

    [[#if content.fragments.headline]]
    [[content.fragments.headline]]
    [[else]]
    YOUR CONTROL COPY
    [[/if]]
  4. Fallback

    • The [[else]] copy is used if Jacquard returns no content for that part.

    • Use your control copy from Jacquard.

  5. Personalisation

    • Jacquard copy can contain merge tags, for example {{first_name}}.

    • The matching user fields must exist in Iterable.

    • Check merge tags render in a proof.

  6. Save

    Save the template, then re-save each triggered campaign that uses it.

1.4 Push templates

Skip if Jacquard only optimises email.

  1. Link the feed

    Link the Jacquard feed to the push template, as for email.

  2. Add the fields

    Use the same pattern in title and message, with the push field keys from the Connect tab.

  3. Test

    Re-save triggered campaigns. Send to a test device and check nothing is truncated.

1.5 Test and go live

  1. Send a proof

    All Jacquard-controlled parts should show Jacquard copy, not fallback.

  2. Activate in Jacquard

    Approve the experiment plan and activate the touchpoint.

  3. Launch in Iterable

    Launch or activate the campaign.

Reference

Response and troubleshooting

Example data feed response. Message copy is under content.fragments.

{
  "touchpoint_id": "1cd96c96-…",
  "experience_id": "6be63acd-…",
  "is_control_group": false,
  "content": {
    "channel": "email",
    "fragments": {
      "subject_line": "{{first_name}}, take 50% off all cycling products",
      "preheader": "Bring more energy to your rides without paying full price."
    }
  },
  "tracking": { "request_id": "33fec309-…" }
}

Troubleshooting

Fallback copy shows

Check the field key matches the Connect tab and the path starts content.fragments.

Raw [[ ]] text shows

The feed isn’t linked to this template, or merge contexts is ticked. If ticked, use {{ }} instead.

Every recipient gets the same variant

Turn data feed caching off.

Merge tag shows as text

For example {{first_name}}. Report to your Jacquard contact with the template ID.

Triggered campaign shows old template

Re-save the campaign.