The embeddable fit-check

Put the fit-check on your summit site in one line

A single <script> tag turns any page into a personalised fit-check: a visitor enters their company and role and gets an honest go/no-go for your summit or conference, plus a tailored shortlist of exhibitors and sessions.

How it works

  1. 1

    Visitor enters two things

    They type their company URL and job role — no login, no account, no cookies.

  2. 2

    AI reads their site and matches

    The model reads their public website and maps it against your confirmed exhibitors and the draft agenda.

  3. 3

    Honest verdict and shortlist

    They get a clear go/no-go and a personalised shortlist — grounded in real data, not FOMO.

  4. 4

    Optional: register or get the brief

    Turn on a Register CTA and an 'email me my brief' capture to convert the visit into a lead.

Install in one line

Drop a single <script> tag with your event slug onto any page and the widget appears. The button, banner and bar modes need nothing else. For the in-page modes — strip, inline and native — also add a <div> with an id and point data-target at it so the widget knows where to render.

<div id="configurence-widget"></div>
<script src="https://app.configurence.com/embed.js"
        data-event="as-adria-2026"
        data-mode="inline"
        data-theme="auto"
        data-target="#configurence-widget"
        async></script>

Any hand-coded or static site.

  1. 1Open the template that renders on every page, or just the page you want.
  2. 2Paste the snippet just before the closing </body> tag.
  3. 3For inline, strip or native modes, add the target <div> where the widget should appear.

Works from a static host or CDN — no build step required.

Open the customizer to tune colors, fonts and copy with a live preview.

Placements

Strip

data-mode="strip"

A compact single-row form (company + role + button) that sits inline like a search bar and opens the full report on a new page — the lightest footprint, best for lead capture.

Inline

data-mode="inline"

Renders the full report directly in the page and auto-resizes to its content, with no modal or redirect.

Button

data-mode="button"

A floating pill that opens the widget in a modal; the iframe loads lazily on first open so it never slows the host page.

Banner

data-mode="banner"

A dismissible bottom bar with a call-to-action that opens the widget in a modal.

Bar

data-mode="bar"

A thin sticky bar pinned to the bottom of every page — the strip form site-wide. Visitors can dismiss it with an X for the rest of their session; submit opens the full report on a new page.

Native

data-render="native"

Renders a lite report straight into the host page via Shadow DOM (no iframe) for the deepest visual blend — requires the host domain to be CORS-allowlisted.

Theming

Auto theming samples the host page

With data-theme="auto" the widget reads the host page's font, background and brand color and adapts to match, applying WCAG contrast guards so text stays legible on any surface.

Explicit tokens override the sampler

Any design token you set by hand — data-accent, data-bg, data-surface, data-text, data-dim, data-border, data-radius, data-font, data-hfont — takes precedence over the auto-sampled value, so you can pin exactly the parts you care about and let the rest adapt.

Theme variants beyond auto

data-theme also accepts match-light and match-dark to lock the sampler to a light or dark reading of the host, or custom to drive the look entirely from your explicit tokens.

Per-event defaults live server-side

Theme and copy defaults can be stored per event on the server, so a clean one-line embed inherits the agreed look without repeating every attribute on the tag.

Attribute reference

AttributeValuesWhat it does
data-eventevent slug (required)The event this widget matches against; the only required attribute.
data-modestrip | inline | button | banner | barHow the widget presents itself on the page.
data-bar1 | trueAdd-on: with a strip or inline placement, the same tag also pins the site-wide sticky bar to the bottom of every page. Ignored in the bar mode itself (redundant) and in the button and banner modes.
data-rendernativeSet to native to render a lite report in-page via Shadow DOM instead of an iframe.
data-themeauto | match-light | match-dark | customTheming strategy — sample the host, lock to a light/dark reading, or drive from explicit tokens.
data-accentCSS colorBrand/accent color for buttons and highlights.
data-bgCSS colorPage background color behind the widget.
data-surfaceCSS colorCard and panel surface color.
data-textCSS colorPrimary text color.
data-dimCSS colorMuted/secondary text color.
data-borderCSS colorBorder and divider color.
data-radiusCSS length (e.g. 12px)Corner radius for cards, inputs and buttons.
data-fontCSS font-family | inheritBody font family; the special value inherit samples the host page's body font.
data-hfontCSS font-familyHeading font family.
data-labeltextHeadline shown above the form.
data-langen | hrSwitches the built-in interface copy between English and Croatian/Bosnian.
data-introtextSub-line shown under the headline.
data-ph-companytextPlaceholder for the company URL input.
data-ph-roletextPlaceholder for the job role input.
data-ctatextSubmit button label.
data-targetCSS selector (e.g. #configurence-widget)Where in-page modes mount; points at your container element.
data-positionbr | bl (or bottom-right | bottom-left) — button modeScreen corner for the floating button (button mode). The banner and bar modes ignore it — the banner spans the bottom, the bar floats centered just above it.

Security & privacy

Frame-ancestors allowlist

Each event carries a frame-ancestors allowlist, so only the domains you approve can iframe the widget — an embed copied onto any other site simply won't load.

Per-IP rate limiting

POST /api/match is rate-limited per IP — by default 8 requests per 5 minutes and 60 per day — which absorbs abuse and scraping without getting in a real visitor's way.

GDPR-friendly by construction

The widget collects only a company URL and a job role — no cookies, no fingerprinting, no accounts. One font caveat: when a custom Google font is configured, the widget's iframe loads it from fonts.googleapis.com. Sessions are ephemeral and shared report links expire after 30 days.

Analytics

A conversion funnel, delivered to you

Every interaction is emitted as a funnel — impression → open → submit → report → click_exhibitor / click_share / click_register / lead — so you can see exactly where visitors drop off and how many convert. We send you the funnel numbers (impression → open → submit → report → register) — ask your Configurence contact for the live view. No extra tracking script needed on your site.

FAQ

Will it slow my site down?+

No. The loader is async and self-contained — it renders after your page, and in the button and banner modes it loads the report iframe only when a visitor opens it. The bar mode loads just its small form strip up front.

Is visitor data safe and GDPR-friendly?+

Yes. We collect only the company URL and role — no cookies, no fingerprinting, no accounts. Sessions are ephemeral and shared report links expire after 30 days.

Can I show it in my audience's language?+

Yes. English and Croatian ship today — set data-lang="hr" and the built-in copy switches. The platform isn't limited to these two: we add further languages on request as part of onboarding. You can also override each label yourself: the headline (data-label), the intro line (data-intro), both placeholders (data-ph-company, data-ph-role) and the button label (data-cta).

Will it match my brand colors and fonts?+

With data-theme="auto" it samples your page's font, background and accent color and adapts, with WCAG contrast guards. Or set exact tokens like data-accent and data-font.

Can I use it on multiple events or pages?+

Yes. Each embed points at one event via data-event, and you can place as many widgets as you like across your pages.

How do I remove it?+

Delete the <script> tag, and the target <div> if you added one. Nothing is left behind — no cookies or stored state on your site (the banner and bar modes keep a small sessionStorage flag remembering they were dismissed — cleared when the tab closes).

What if the visitor has no website?+

They can enter a role and company name instead of a URL; the match then leans on the role and any public signal it can find, and stays honest about the lower confidence.

Can any site embed it?+

Only domains on the event's allowlist may frame the widget, and the match API is rate-limited per IP — so your embed can't be lifted onto another site.