How Wistia populates Marketo custom field

When you connect Marketo to Wistia with custom fields enabled, Wistia creates a set of custom lead fields in your Marketo instance — and writes to them under specific conditions. If you're seeing Marketo web activity for a lead but the Wistia custom fields (like Wistia Last Engagement) stay blank, this page explains why: different viewer actions write different data, and a plain video view never writes lead fields at all.

This is a developer reference for what data Wistia sends and when. For connecting the integration and mapping fields in the Marketo UI, see the Marketo integration guide in the Help Center.

The three events that write to a Marketo lead

Wistia upserts a Marketo lead (and writes custom fields) from exactly three viewer events:

EventWhat triggers itLead is upserted?
Form submissionA viewer submits a Wistia Form (email capture) on an embedded playerYes
Live registrationA viewer registers for a Wistia webinarYes
Live attendanceA viewer attends a Wistia webinarYes

A plain video view is not on this list. Watching an embedded video — even by a known lead — does not upsert a Marketo lead or write any Wistia custom field on its own. That's why you can see Marketo web activity for a page while the Wistia lead fields stay empty: the view generated activity, but no lead-writing event fired.

A lead must have an email for any write to happen. Wistia gets the email from the form the viewer submitted or the webinar they registered for — not from the video player itself.

Which fields each event writes

Not every event writes every field. This is the key to the "blank field" puzzle.

Form submission

A Wistia Form submission writes only the identity fields, plus any custom form fields you've mapped to Marketo:

  • email, firstName, lastName
  • leadSourceWistia Video: <form name>
  • Any custom Wistia Form fields you mapped to Marketo fields

A form submission does not write engagement, UTM, IP, or referrer fields. If a lead only ever submitted a form, Wistia Last Engagement will be blank — that's expected.

Live registration

Webinar registration writes identity plus richer fields:

  • email, firstName, lastName, company, phone, title, country
  • leadSourceWistia Live Stream: <event title>
  • Wistia Live Last Registered, Wistia Live Last Registered Event Name
  • Any mapped custom registration fields, plus UTM / IP / referrer fields

Live attendance

Webinar attendance writes the most. In practice it's the only event that fills Wistia Last Engagement and Wistia Last Played Time: those fields are eligible on registration too, but a registration carries no watch data yet, so the values are empty and skipped until someone actually attends.

  • email, leadSourceWistia Live Stream: <event title> - Attendee
  • Wistia Last Engagement, Wistia Last Played Time
  • Wistia Live Last Attended, Wistia Live Last Attended Event Name
  • Wistia Live Last Poll Response Count, Wistia Live Last Chat Count, Wistia Live Last Link Click Count
  • UTM (campaign / source / medium), referrer, and IP (country / region / city)

The full custom field list

These are the custom lead fields Wistia creates and writes in Marketo (field names as they appear in Marketo):

FieldWritten by
Wistia Last EngagementLive attendance (in practice)
Wistia Last Played TimeLive attendance (in practice)
Wistia Last UTM Campaign / Source / MediumLive registration & attendance
Wistia Last ReferrerLive registration & attendance
Wistia Last IP Country / Region / CityLive registration & attendance
Wistia Live Last Registered / Registered Event NameLive registration
Wistia Live Last Attended / Attended Event NameLive attendance
Wistia Live Last Poll Response CountLive attendance
Wistia Live Last Chat CountLive attendance
Wistia Live Last Link Click CountLive attendance
Wistia User KeyAll lead-writing events

Where UTM, referrer, and IP values come from

The Wistia Last UTM Campaign / Source / Medium, Wistia Last Referrer, and Wistia Last IP fields aren't read from a link you configure anywhere in Wistia or Marketo. Wistia's player/embed script reads them from the URL of the page where the video or form is being viewed, at the moment a lead-writing event fires (a form submission, or a webinar registration/attendance). Those values ride along with that event and land in the matching Wistia Last... lead fields.

Two things follow from "read off the page URL at event time":

  • The UTMs have to be in the URL on the page where the event fires. If a lead lands on example.com/lp?utm_source=facebook&utm_medium=paidsocial&utm_campaign=spring and submits the form there, the UTMs are captured. If the form then redirects to a thank-you page and the event fires on that page, Wistia reads a clean URL with no ?utm_* — and the UTM fields stay blank.
  • A post-submission redirect is the most common way UTMs silently stop populating. A redirect to a thank-you or confirmation page usually doesn't carry the ?utm_* query string forward. If you recently added a thank-you page and UTMs stopped landing in Marketo, this is almost always why. The fix is on your page: configure the redirect to preserve the query string so the UTMs survive to wherever the Wistia event fires. Preserving UTMs across a redirect is a site-side change, not a Wistia setting.

Confirm it quickly: on the page where the event fires, open DevTools and check window.location — if there's no ?utm_source=..., the params were dropped before Wistia could read them. Then watch the Network tab during the submit/play and confirm utm_source / utm_medium / utm_campaign are present in the Wistia request payload.

"I see web activity but the fields are blank" — checklist

If a lead has Marketo web activity but empty Wistia custom fields, check, in order:

  1. What event did the lead generate? Only form submissions and live registration/attendance write fields. A plain video view writes none. If the lead only watched a video (no form, no webinar), blank fields are expected behavior.
  2. For Wistia Last Engagement specifically: in practice only live attendance fills it. The field is also mapped to webinar registration, but a registration carries no watch data, so it stays empty until the lead attends. A lead who submitted a form but never attended a webinar will never have this field populated.
  3. Are custom fields enabled on the integration? The custom Wistia fields are only created and written when custom fields is turned on during connection. Without it, Wistia writes only standard lead fields (email, name, lead source).
  4. Does the lead have an email? No email on the event means no upsert. Forms and webinar registration supply the email; the player does not.
  5. Do the custom fields actually exist in Marketo? Wistia only writes a custom field if it exists on your Marketo instance. When custom fields are enabled, Wistia creates them on connection and validates them on each health check; if a field was later deleted or renamed in Marketo, the health check reports it as missing and that field won't populate. Reconnect (or recreate the field) so the field is present again.
  6. Is the event recent enough? Wistia only emits these custom-field columns for event records created after December 2, 2024. Interactions from before that date don't backfill the Wistia Last... fields — so a lead whose only qualifying event predates the cutoff will show blank custom fields even though everything is wired correctly.

What about per-video engagement?

Individual video plays are recorded in Marketo — but as Wistia Activity records (a custom activity type), not as lead-field values. Activities and lead fields are separate surfaces in Marketo: activities give you the timeline of what a lead watched; the Wistia Last... lead fields are summary values written only by the events above. Don't expect a video view to update a Wistia Last... field.

Using Pardot instead?

If your integration is Pardot (Marketing Cloud Account Engagement), the behavior differs — most notably, in Pardot a plain video watch does write lead fields, which is not the case in Marketo. See What Wistia sends to Pardot: engagement fields and viewer identification for the Pardot wire format.


Did this page help you?