WaaS Help Center

Smart Lead Magnet

The Smart Lead Magnet is the form and funnel system of WaaS. It covers the entire range — from a simple contact form to interactive click-paths with conditional logic and dynamic result pages: configurators, needs assessments, application funnels, quizzes, surveys.

Every form feeds your inquiries directly into the Integrated CRM, works without external tools, and is GDPR-compliant out of the box.


What the Smart Lead Magnet is for

Forms are rarely “just forms”. They’re the transition from an interested person to a qualified lead. That’s exactly where the Smart Lead Magnet comes in: it lets you build your forms so they pick people up, pre-qualify them, and ask for the right information at the right step — without you having to buy Typeform, Tally, or a separate tool.

From a single-page contact form to a multi-step application funnel with file upload, conditional follow-up questions, and individual result evaluation, everything runs in the same system, in the same GDPR environment, with the same connection to your CRM.


Where do I find it?

Smart Lead Magnets are created and maintained in the WaaS backend under “Forms”. They’re then embedded as a module on any page — at the spot where the form should appear for visitors.

You can see the incoming responses in two places:

  • every individual raw response under “Form Responses”,
  • automatically merged into leads in the Integrated CRM.

What the Smart Lead Magnet can do

Simple forms

If you only need a classic contact form, a newsletter sign-up, or a short consultation request: three to five fields, spam protection, done. Typical use cases:

  • Contact form
  • Newsletter sign-up
  • Consultation or appointment request
  • Booking inquiry

Interactive click-paths (funnels)

With conditional logic, answers in one question determine which follow-up questions are shown:

  • Configurators – “Which package fits me?”, “Which service are you looking for?”
  • Needs assessments – “Let’s understand your requirements”
  • Application funnels – with dynamic fields that only appear when relevant
  • Quiz formats – lead generation with playful added value
  • Surveys – with a clear evaluation structure

For each field, you can specify under which condition it is shown or hidden — i.e. “show field B if value X was selected in field A”. Per condition, you choose the reference field name, the exact value, and the action (show or hide).

Multi-step forms

You can split a longer form across multiple pages using the “New page” field type. Per page, you set a heading and an explanatory text; a progress bar is shown automatically. Long funnels feel lighter that way and, in our experience, lead to significantly higher completion rates.

Dynamic result pages (quiz, configurator, needs assessment)

You can give your form result rules. Based on the answers, the Smart Lead Magnet then shows an individually matching result page — e.g. “Your matching program is X”, “Your recommended service is Y”, “Your maturity level is Z, we recommend consulting Q”.

Here’s how it works:

  1. In the form, set the “After submit” option to “Show result”.
  2. You create one result rule per result (the “Form Results” area in the backend, on your form). For each rule you define:
    • an internal title (only for your overview)
    • one or more conditions on the answers
    • whether conditions are combined with “All” (AND) or “At least one” (OR)
    • the result heading and a description text (rich text)
    • optionally a CTA button with label and target URL
  3. You sort the rules via the “Sort” field in the correct order — the lowest number is checked first. The first rule whose conditions are met wins (first-match-win).
  4. You create exactly one fallback rule. This kicks in when no other rule matches — making sure every participant sees a result at the end.

Available operators per condition:

OperatorMeaningExample
equalsexact valuefield = bwl
does not equalvalue is NOT equalfieldbwl
is one ofvalue is in a listfield[bwl, vwl, ms]
is none ofvalue is NOT in a listfield[bwl, vwl, ms]

💡 Rule of thumb when sorting: Most specific rules first (low sort number, e.g. 10, 20, 30), fallback all the way at the end (e.g. 999). If you’re unsure about the rules, start with a simple evaluation (“One of 3 results”) and expand step by step.

Delivery in the AI chat (Lead Flows)

Every Smart Lead Magnet form can additionally be delivered as a Lead Flow via the AI Assistant Widget: the AI assistant actively approaches visitors at the right module and asks the form fields in conversation – with tappable answer chips, the option to ask side questions, and a summary before submitting. The enquiries end up identically in the CRM and use the same result pages and email notifications. You’ll find details and setup in the widget article.


Standard fields and auto-mapping to the CRM

Seven field types are CRM standard fields. If you use one of them in your form, the answer automatically lands in the right field of your Integrated CRM — without you having to map or configure anything:

Field type in the formWhere the answer lands in the CRM
First name (first_name)Lead’s first name
Last name (last_name)Lead’s last name
Email (email_address)Lead’s email — also used for the duplicate check
Phone (phone_number)Lead’s phone number
Message (Textarea)Lead’s message
Company (company)Lead’s company
Position (position)Lead’s position

All other field types (single-/multi-select, file upload, date, custom text, etc.) are fully stored in the form response and viewable under “Form Responses” — but they don’t automatically land in dedicated CRM columns. If you need that for an additional field, talk to us.


Available field types

Field typeWhat for
First nameStandard field, maps to CRM
Last nameStandard field, maps to CRM
EmailStandard field, maps to CRM, serves as duplicate key
PhoneStandard field, maps to CRM
CompanyStandard field, maps to CRM
PositionStandard field, maps to CRM
Text (single line)short free-text answers
Textarea (multi-line)longer messages — interpreted as “Message” in the CRM
Date / Timefor appointment requests, birth dates, etc.
Select (Dropdown)one answer from a list
Radio buttonsone answer from several, all visible
Checkboxsingle yes/no confirmation (e.g. terms)
Checkbox groupmultiple answers possible
File uploadfor applications, attachments, portfolio pieces
New pagepage break in the multi-step funnel with its own heading + explanatory text
Hidden fieldfilled automatically — e.g. fixed value, UTM parameter, partner code from Affiliate Marketing

For each field you also set: label, placeholder, help text, required yes/no, and the width of the field (100%, 67%, 50% or 33% — so you can, for example, show “First name + Last name” next to each other).

For select fields (dropdown, radio, checkbox group), you store the options as a list — one label and a technical value per entry, optionally an image plus layout setting (filled or centered) for visual selection styles.

Consultant contact card for the appointment booking field

For the “Appointment booking” field type, you can store a contact-person card (image, name, position, accompanying text) — it’s shown next to the field and communicates “XY helps you with this appointment”. This significantly upgrades consultation and booking forms.


Validation

For each field, you can set validation rules via the validation input. Available rules:

RuleMeaning
emailvalid email address
urlvalid URL
min:5at least 5 characters
max:255at most 255 characters
length:10exactly 10 characters

Rules can be combined with the pipe symbol, e.g. email|max:255 for “must be a valid email, max 255 characters”.

Required fields are set separately via the “Required” toggle.


Spam protection: FriendlyCaptcha

Instead of Google reCAPTCHA, we use FriendlyCaptcha by default — a captcha system from Germany that works without cookies, without user tracking, and without data transfer to the US. The license is part of your WaaS package, you don’t have to worry about it.

For visitors, FriendlyCaptcha runs in the background — usually without a visible image puzzle, without “Select all images with traffic lights”. The result: less friction, higher completion rate, and no privacy conflict with Google.


Setting up email notifications

For each form, you can create one or more email notifications — e.g. an internal notification to your team and a confirmation email to the submitting person.

How to set up an email

In the form, under “Email Notifications”, click “New” and fill in per entry:

  • Recipient (To) – one or more addresses. If the email should go to the person who filled out the form, enter {# email_address #}.
  • Subject – here too you can use merge tags, e.g. “Thanks for your inquiry, {# first_name #}!”
  • Message – the content as rich-text HTML. This is where the merge tags that insert answers from the form go.

Available merge tags

Merge tagInserts
{# first_name #}First name from the form
{# last_name #}Last name
{# email_address #}Email address
{# phone_number #}Phone number
{# field_id #}any other field — by field ID (see “Name” in the field)

Example: if you have a select field with the name interest, you insert the chosen value into the email with {# interest #}.

Multiple notifications per form

You can create any number of notifications per form. A common, sensible setup:

  1. Internal notification to your sales team with all answers as a formatted overview.
  2. Confirmation email to the submitting person with a friendly receipt confirmation and a note on when to expect a response.

💡 Rule of thumb: When you send confirmation emails to the submitting person, clearly signal that this is an automated confirmation — that avoids the expectation of an immediate personal reply.

Template: Sharp-looking internal notification (to copy)

You can copy this HTML template 1:1 into the message field of an internal notification — it looks like a professional system email in the inbox and is email-client compatible (table layout with inline styles):

<table style="background-color: #f5f5f5; padding: 40px 16px;" border="0" width="100%" cellspacing="0" cellpadding="0">
<tbody>
<tr>
<td align="center">
<table style="max-width: 600px; width: 100%;" border="0" width="600" cellspacing="0" cellpadding="0"><!-- Header -->
<tbody>
<tr>
<td style="background-color: #202027; padding: 36px 48px 28px; border-radius: 8px 8px 0 0;">
<p style="margin: 0 0 6px; font-size: 10px; font-weight: bold; letter-spacing: 3px; text-transform: uppercase; color: #ff621f;">New Message</p>
<h1 style="margin: 0; font-size: 24px; font-weight: bold; color: #ffffff; line-height: 1.3;">Contact Form</h1>
</td>
</tr>
<!-- Accent bar -->
<tr>
<td style="background-color: #ff621f; height: 4px; font-size: 0; line-height: 0;">&nbsp;</td>
</tr>
<!-- Body -->
<tr>
<td style="background-color: #ffffff; padding: 40px 48px 8px; border-left: 1px solid #e8e8e8; border-right: 1px solid #e8e8e8;">
<table style="border-top: 1px solid #f0f0f0;" border="0" width="100%" cellspacing="0" cellpadding="0">
<tbody>
<tr>
<td style="padding: 13px 0; font-size: 11px; font-weight: bold; letter-spacing: .6px; text-transform: uppercase; color: #999999; vertical-align: top; border-bottom: 1px solid #f0f0f0;" width="40%">From</td>
<td style="padding: 13px 0 13px 16px; font-size: 15px; color: #202027; vertical-align: top; border-bottom: 1px solid #f0f0f0; font-weight: 600;" width="60%">{# first_name #} {# last_name #}</td>
</tr>
<tr>
<td style="padding: 13px 0; font-size: 11px; font-weight: bold; letter-spacing: .6px; text-transform: uppercase; color: #999999; vertical-align: top; border-bottom: 1px solid #f0f0f0;" width="40%">Email</td>
<td style="padding: 13px 0 13px 16px; font-size: 15px; color: #202027; vertical-align: top; border-bottom: 1px solid #f0f0f0;" width="60%"><a style="color: #ff621f; text-decoration: none;" href="mailto:{# email_address #}">{# email_address #}</a></td>
</tr>
<tr>
<td style="padding: 13px 0; font-size: 11px; font-weight: bold; letter-spacing: .6px; text-transform: uppercase; color: #999999; vertical-align: top; border-bottom: 1px solid #f0f0f0;" width="40%">Phone</td>
<td style="padding: 13px 0 13px 16px; font-size: 15px; color: #202027; vertical-align: top; border-bottom: 1px solid #f0f0f0;" width="60%">{# phone_number #}</td>
</tr>
<tr>
<td style="padding: 13px 0; font-size: 11px; font-weight: bold; letter-spacing: .6px; text-transform: uppercase; color: #999999; vertical-align: top; border-bottom: 1px solid #f0f0f0;" width="40%">Company</td>
<td style="padding: 13px 0 13px 16px; font-size: 15px; color: #202027; vertical-align: top; border-bottom: 1px solid #f0f0f0;" width="60%">{# company #}</td>
</tr>
<tr>
<td style="padding: 13px 0; font-size: 11px; font-weight: bold; letter-spacing: .6px; text-transform: uppercase; color: #999999; vertical-align: top; border-bottom: 1px solid #f0f0f0;" width="40%">Message</td>
<td style="padding: 13px 0 13px 16px; font-size: 15px; color: #202027; vertical-align: top; border-bottom: 1px solid #f0f0f0;" width="60%">{# message #}</td>
</tr>
</tbody>
</table>
<!-- Spacer -->
<table border="0" width="100%" cellspacing="0" cellpadding="0">
<tbody>
<tr>
<td style="height: 40px;">&nbsp;</td>
</tr>
</tbody>
</table>
</td>
</tr>
<!-- Footer -->
<tr>
<td style="background-color: #202027; padding: 22px 48px; border-radius: 0 0 8px 8px;">
<p style="margin: 0; font-size: 11px; color: #555560; text-align: center; letter-spacing: .4px;">This is an automated notification. Please do not reply to this email.</p>
</td>
</tr>
</tbody>
</table>
</td>
</tr>
</tbody>
</table>

Customizations to the template you’ll often want to make:

  • Colors – replace #202027 (dark grey header/footer) and #ff621f (accent color) with your brand colors.
  • Header texts – “New Message” and “Contact Form” belong in the context of your application (“New Application”, “Configurator Inquiry”, etc.).
  • Rows – the template assumes the standard fields first name/last name/email/phone/company/message. If you have other or additional fields, you build in further <tr> blocks — each with your merge tag {# field_id #}.

What happens after the form is submitted

Per form, you decide what the submitting person sees after submitting. Three options:

OptionBehavior
Show messageDefault. The success message stored in the form is shown as an overlay.
RedirectRedirect to a specified URL — e.g. your own thank-you page or directly to an appointment booking (e.g. zeeg.me).
Show resultThe result rule matching the answers is shown (see “Dynamic result pages” section).

What happens behind the scenes with the inquiry

As soon as someone submits the form, several steps run — without you having to do anything:

  1. The spam protection checks the request (FriendlyCaptcha).
  2. The response is fully stored — including automatically captured context information (see next section).
  3. A lead is created in the Integrated CRM — or, if the same email address is already known, the existing lead is updated.
  4. The stored email notifications are sent in the order you created them.
  5. For quiz/configurator: the matching result is determined and shown to the submitting person.
  6. The person sees the thank-you page, the result, or is redirected to the URL you specified.
  7. Optionally: the inquiry is transmitted in parallel to an external CRM (e.g. Pipedrive).

Automatically captured context information

For every form response — without the submitting person entering anything — some technical context information is stored alongside, which you can see in the response detail view in the backend:

  • Geographic mapping – country, region, city, time zone (based on IP, without personal reference by GDPR standards)
  • UTM parameters (utm_source, utm_medium, utm_campaign) – if the person came through a tagged campaign
  • Referrer – which external page the person came from
  • Partner code – if the person came through an Affiliate Marketing link
  • Device type – Desktop / Mobile / Tablet
  • Browser and operating system
  • Page from which the form was submitted (URL and page title)

This is gold for marketing analyses — “which landing page delivers the most inquiries?”, “do our leads come more from mobile or desktop?”, “is the newsletter campaign from last month working?”.


Two ways to build a form

1. Classic in the backend

In the “Forms” area, you create a new form and configure:

  1. Master data – title (internal), submit-button text, lead source for the CRM, active toggle.
  2. Create fields – per field type, label, name (technical ID), validation, width, required.
  3. Set conditional logic per field, if needed.
  4. Set up email notifications (see above).
  5. After submit – choose mode (Message / Redirect / Result).
  6. Create result rules, if mode is “Show result”.
  7. Embed the form on a page (PageBuilder module “Form”).

2. With the AI Assistant

Just describe in your own words what you need — the AI Assistant builds the form for you:

“Create an application form for a junior developer position. Applicants should upload their CV, indicate programming language skills, and I want to know whether they already have experience with React — if yes, how many years.”

The Assistant creates the form including fields, validation, and conditional logic directly. You review, adjust, and embed it.


File uploads – what you should know

File uploads (e.g. CVs, certificates, passport copies) can be enabled via the “File upload” field type. Important here:

  • Allowed file formats – configurable per file-upload field: PDF, JPEG, PNG, DOCX, XLSX, CSV. Only allow what you actually need — that protects you from unwanted attachments.
  • Maximum file size – default 10 MB per file, adjustable per field.
  • Storage location – the files are stored exclusively on servers in Germany, in your WaaS backend. No third-country transfer, no external cloud.
  • Encrypted transmission – uploads always run over TLS.

⚠️ Legal note on photo IDs

If you set up forms where applicants or customers should upload photo IDs (national ID card, passport): as the controller, you’re responsible for ensuring there’s a legal basis for this collection. We provide the technical functionality — the legal review is up to you or your data protection officer (see DPA § 4 para. 3).


Real-world examples

Tax firm: Configurator “Which service fits?”

First question: “What’s it about?” — Tax advice for individuals / Bookkeeping for businesses / Payroll.

Answer “Individual” → follow-up questions on marital status and possibly self-employment.

Answer “Business” → follow-up questions on employee count and industry.

At the end: matching service recommendation with consultation CTA via result rule.

Start-up: Application funnel with file upload

Personal data (first name, last name, email — all three standard fields, go straight into the CRM) → upload CV → multi-select “Which programming languages?” → if “JavaScript” selected: “React experience?” → if yes: “Years of experience?”.

University programs: Programs finder with dynamic result

3-step funnel: degree → field of study → career goal.

Based on the combination, the matching program is suggested via the result rules (“Your matching program: PhD CS — Master/Diploma + Tech/Research”). CTA: “Go to program”.

Consultant: Needs assessment with maturity evaluation

5-step quiz. One self-assessment per step. The maturity level is classified via the result rules (“Level 3 of 5”) and a matching next recommendation is shown.

B2B provider: Newsletter sign-up with pre-qualification

Simple sign-up + two optional multi-select questions on role and company size. Data lands directly in the CRM with the answers as tags, later usable for segmentation.


Privacy and data residency

Where is the data stored?

Exclusively on servers in Germany. No third-country transfer, no US cloud, no external processors outside the EU. The exact data residency is set out in the WaaS contract (Contract § 5.5 para. 3).

What data is stored?

  • Everything the submitting person voluntarily enters in the form.
  • The technical data described under “Automatically captured context information” (geo, UTM, referrer, device type, browser).

There’s no hidden profiling, no third-party cookies, no external trackers. Hidden fields are only used for technical origin information.

FriendlyCaptcha instead of Google reCAPTCHA

A deliberate choice. FriendlyCaptcha processes no personal data, sets no cookies, and runs its servers in the EU. This way you sidestep the Schrems II conflict that’s latently always present with Google reCAPTCHA.

Double submissions

If the same person submits the same form multiple times, based on the email address the CRM doesn’t create a new entry, but rather adds the new inquiry to the existing lead.

Files

Uploaded files are stored in the WaaS backend and are only reachable through your backend. They can be deleted individually or in bulk. At the end of the contract, they’re exported and handed over together with the rest of the data (§ 5.5 para. 4).


What the Smart Lead Magnet (still) can’t do

So you have clear expectations — here honestly, what doesn’t work today:

FunctionStatus today
Book appointments directly in the form (Google Calendar / Outlook integration)planned, today solvable via redirect to zeeg.me
Conditional notifications (e.g. applications with “React” go to the HR head, others to recruiters)planned
Saving long funnels mid-way (“Continue here when returning later”)rudimentary, better solution in progress
A/B tests of form variantsplanned
Showing multiple results at once (Top 3 instead of 1)not in current scope — today first-match-win
Numeric operators in result rules (greater than, between)not in current scope — today =, , is one of, is none of
Payment directly in the form (Stripe / PayPal)not in standard scope

If a point is critical for you: let us know. Some things are on our roadmap and we can prioritize, others we can already solve today with on-board means.


Service boundaries Blackpattern ↔ Customer

AreaYou as the customerBlackpattern
Create forms, configure fields
Set up conditional logic in the backend
Create result rules for quiz / configurator
Set up email notifications + templates
Generate complex funnels with AI Assistant
Integration with external CRM (submit request)
Set up integration with external CRM
Custom additional CRM columns (submit request)
Set up custom additional CRM columns
Adjust file size limit beyond 10 MB
FriendlyCaptcha license✓ (included)
Legal review of collected data
Export responses

Frequently asked questions

How many forms can I create? No hard limit. Typical customers have between 3 and 20 forms running in parallel.

How many result rules can I create per form? No hard limit. Practical range for configurators: usually 4 to 12 rules plus 1 fallback.

Does this also work on mobile devices? Yes, fully. All fields, conditional logic, multi-step funnels, file uploads, and result pages also run on smartphone and tablet.

Can I embed the same funnel on multiple pages? Yes. A form created once can be served in multiple places. In the response detail view, you can see which page the respective inquiry came from.

What happens to the raw responses if I rename a field later? Responses already received remain viewable with the old field name. New responses are stored with the new field name. For result rules that reference the old field name, you have to update the reference — otherwise the conditions won’t match anymore.

Are the forms accessible? They use standard HTML fields with correct labels, keyboard navigation, and screen reader support. If you need full WCAG-AA conformance (e.g. public sector, BGG-relevant customers), talk to us before setup — we review per form and adapt if needed.

Can I also use merge tags in the email subject? Yes. Merge tags work in both the subject and the recipient field. So a confirmation email can go to {# email_address #} with the subject “Thanks for your inquiry, {# first_name #}”.

What happens if the form doesn’t come through? Responses are stored in the database before the email notification. Even if the notification email doesn’t arrive for some reason, the inquiry is present in the backend — you don’t lose any leads.

Can I protect a form behind a login? Not in standard scope. If you need login-protected areas, that’s a custom setup we review individually.


Related: Integrated CRM · AI Assistant · Affiliate Marketing