Skip to main content

Embed a registration form on your website

Written by Holly

The Event Registration embed lets you place a HeySummit registration form on your own website. It is designed for free-ticket registration. If you want to sell paid tickets, add-ons, or donations, use a HeySummit event page or micro-site instead. To use it, your event must be published and must have at least one active free ticket. Your plan must include advanced ticketing for the form to work. If the preview says “Event registration not configured”, check that feature, the published event and the selected free ticket.


​

Find the embed code

  1. Go to Marketing > Embeddable Media.

  2. Find Event Registration (Form).

  3. Click Preview to test the form in a modal, or View Embed Code to copy the iframe code for your website.

  4. If you have more than one free ticket, choose the ticket attendees should be linked to before copying the code.


​

Current Event Registration Form embed code


​

Paste the generated code into your website's HTML. Use the full code HeySummit gives you, including the iframe and the script below it. That script listens for messages from the iframe and automatically adjusts the iframe height as the form content changes.


​

What the form includes

The embedded form uses your event styling and collects the registration details required for your event, including attendee name, email, registration questions, legal consent fields, marketing opt-ins, directory permission, and reCAPTCHA when those settings are enabled. After a successful registration, the embed shows a confirmation message and, when available, add-to-calendar links. If your event has a custom thank-you redirect URL, the embed sends the registration message first, then redirects the top-level page after a short delay.


​

Track successful embedded registrations

If you want your website to react when someone registers through the embed, add a message listener to the page that contains the iframe. For example, you might send an analytics event or update your own page state.


​

<script>
​window.addEventListener("DOMContentLoaded", function () {
​ // Replace this with the iframe ID in your generated embed code.
​ const iframe = document.getElementById("YOUR_EMBED_IFRAME_ID");
​ if (!iframe) return;
​ const expectedOrigin = new URL(iframe.src).origin;
​ window.addEventListener("message", function (event) {
​ if (event.origin !== expectedOrigin) return;
​ if (event.source !== iframe.contentWindow) return;
​ const data = event.data;
​ if (!data || data.source !== iframe.id) return;
​ if (data.event !== "attendee_registered") return;
​ // Run your own registration-complete logic here.
​ });
​});
​</script>


​

The message includes event.data.event with the value attendee_registered and event.data.attendee with the submitted fields, excluding CAPTCHA and internal form fields. Replace YOUR_EMBED_IFRAME_ID with the generated iframe ID. Check event.origin and event.source against the expected iframe before handling the message. The separate data.source value identifies the embed for layout messages; it does not authenticate the sender. Handle attendee details only as needed for your intended registration workflow.


​

Referral and tracking parameters

The embed code can carry normal UTM parameters. If you need to attribute registrations to a speaker or affiliate, append &sc= followed by the speaker code or &ac= followed by the affiliate code to the iframe src URL.


​

Choose another registration path

Not sure whether to use a direct checkout link, embedded form, micro-site, external registration URL, Checkout Playbook, or custom confirmation page? See Choose how people register for your event.

Did this answer your question?