Title: Fromwell – Lead Source for Contact Form 7
Author: Nolan T.
Published: <strong>November 7, 2026</strong>
Last modified: November 7, 2026

---

Search plugins

![](https://ps.w.org/fromwell-lead-source-for-contact-form-7/assets/banner-772x250.
png?rev=3790111)

![](https://ps.w.org/fromwell-lead-source-for-contact-form-7/assets/icon-256x256.
png?rev=3790111)

# Fromwell – Lead Source for Contact Form 7

 By [Nolan T.](https://profiles.wordpress.org/lalokupfer/)

[Download](https://downloads.wordpress.org/plugin/fromwell-lead-source-for-contact-form-7.1.0.0.zip)

 * [Details](https://wordpress.org/plugins/fromwell-lead-source-for-contact-form-7/#description)
 * [Reviews](https://wordpress.org/plugins/fromwell-lead-source-for-contact-form-7/#reviews)
 *  [Installation](https://wordpress.org/plugins/fromwell-lead-source-for-contact-form-7/#installation)
 * [Development](https://wordpress.org/plugins/fromwell-lead-source-for-contact-form-7/#developers)

 [Support](https://wordpress.org/support/plugin/fromwell-lead-source-for-contact-form-7/)

## Description

Fromwell asks “How did you hear about us?” in your Contact Form 7 form only when
it could not see where the visitor came from. When the site can see it — a campaign
tag in the link, an ad network’s click mark, another site that sent the visitor —
nobody is asked, and the message you receive says so.

Each message you receive is labelled Seen, Said or Not known: Seen when the visitor’s
browser showed where they came from, Said when the visitor answered the question,
and Not known when they skipped it.

Fromwell does not connect to any external service: it reads the address and the 
referring site in the visitor’s own browser, and the source goes only with the form
the visitor sends, to your own site’s database and mail.

#### How Fromwell is different

 * It asks “How did you hear about us?” only when the site could not see where the
   visitor came from.
 * A visitor who arrived from a tagged link or from another site is not asked.
 * Each message says whether its source was seen or said.

#### “How did you hear about us?” in your Contact Form 7 form

On the Forms tab of Contact › Fromwell, press “Add the question before the Send 
button” for a form, or type the form-tag [fromwell_ask] where you want it. Undo 
puts the form back exactly as it was.

The words and the answers are yours to change on the Settings tab: some sites write“
Where did you hear about us?”. A box for Other lets the visitor type their own answer.

#### The source line in your form’s e-mail

Press “Add the source line to this form’s mail” on the Forms tab, and the e-mail
that form sends you ends with one line, the Contact Form 7 lead source of that message:
Seen, with where the visitor came from; Said, with their answer; or Not known. The
copy a visitor may get never carries it. The mail tag [_fromwell] puts the same 
line where you want it in a form’s mail.

#### UTM parameters, gclid and the referrer

Fromwell reads the campaign tags of a link (the UTM parameters utm_source, utm_medium,
utm_campaign, utm_term, utm_content and utm_id), the click mark a network adds to
a link (gclid, gbraid and wbraid from Google Ads, msclkid from Microsoft Advertising,
ttclid from TikTok, li_fat_id from LinkedIn, fbclid from Facebook or Instagram, 
twclid from X and epik from Pinterest) and the name of the referring site (the referrer),
in the visitor’s own browser. It keeps the first visit and the latest visit that
showed a source, so a visitor who comes back later by typing your address still 
shows where they came from. A click mark names the network the visitor came through,
never an ad. Every other part of the address is dropped.

#### Every message’s source, on your site

Contact › Fromwell lists each message’s source, newest first, for your CF7 forms:
lead source tracking and form attribution that stay on your own site. Filter the
list by date, form, label, channel, answer or campaign, and download what you see
as a CSV file. A short guide on the same screen explains the labels, puts the question
in a form and gives you links to try it, as an ad click and as a visit with no source.

#### With a page cache, a consent plugin and a phone

The page is the same for every visitor, so a page cache changes nothing: the visitor’s
own browser hides the question when it saw a source. With a consent plugin on your
site, nothing is kept until the visitor allows it, and until then the form simply
asks. The question and the form are tested on phones and tablets.

### Privacy

Fromwell does not connect to any external service: it reads the address and the 
referring site in the visitor’s own browser, and the source goes only with the form
the visitor sends, to your own site’s database and mail.

In the visitor’s browser, Fromwell keeps one first-party note for your site alone,
under the name “fromwell” in the browser’s local storage. It is not a cookie. For
the visitor’s first visit, and for their latest visit that showed where they came
from, the note holds:

 * the campaign tags in the link they arrived by, if it had any (utm_source, utm_medium,
   utm_campaign, utm_term, utm_content, utm_id);
 * a network’s click mark in that link, if it had one (such as gclid or fbclid);
 * the name of the other site that sent them, if their browser passed it, never 
   the address of its page;
 * the first page they opened on your site, without anything after its address;
 * the date and time of those visits.

The note also holds when they were last on your site, how many visits they made,
and when the note ends. It holds no name, e-mail address, IP address, browser details
or anything else that names the person. Every other part of the address is dropped.

The note ends 60 days after the latest visit that showed a source, or after the 
30, 90 or 180 days you choose in “Remember a visitor’s source for” on the Settings
tab. Safari may delete it sooner, after 7 days without a visit.

When a consent plugin on your site asks visitors first, the note is written only
once the visitor allows the category you chose in “Wait for this consent category”(
Marketing at first, or Statistics), and it is deleted if they withdraw it. Until
then, nothing is kept and the form may ask the question. With no consent plugin,
the note is written at once, unless you chose “Only store it when a consent plugin
says yes”.

Nothing leaves the visitor’s browser until they send a form. Where they came from
then goes with that form to your site’s own database and mail. A visitor who never
sends a form leaves nothing on your site. The answer to the question is part of 
the message the visitor sends, and it is kept with it.

On your site, Fromwell keeps one row for each message sent through a form, unless
you switched its list off or the form is set not to store messages: the form, the
time, the label, where it came from and the answer, with a visit count. The row 
holds no name, e-mail address, message, files, IP address or browser details. Rows
older than 365 days are deleted, or after the time you choose. With Flamingo active,
the source line is also kept with Flamingo’s copy of the message.

Fromwell adds suggested wording for your privacy policy to Settings › Privacy, written
from your settings. Its rows are part of WordPress’s personal data export and erase
tools, found through Flamingo’s copy of the message; without Flamingo, no row of
Fromwell holds an e-mail address, so none can be matched to a person.

## Screenshots

[⌊The question "How did you hear about us?" in a CF7 form. It shows only when the
site could not see where the visitor came from.⌉⌊The question "How did you hear 
about us?" in a CF7 form. It shows only when the site could not see where the visitor
came from.⌉[

The question “How did you hear about us?” in a CF7 form. It shows only when the 
site could not see where the visitor came from.

[⌊Each e-mail ends with its lead source. Seen: the link had a campaign tag. Said:
the visitor answered the question.⌉⌊Each e-mail ends with its lead source. Seen:
the link had a campaign tag. Said: the visitor answered the question.⌉[

Each e-mail ends with its lead source. Seen: the link had a campaign tag. Said: 
the visitor answered the question.

[⌊Your leads list: where each message came from, newest first. Filter it, or download
it as a CSV file.⌉⌊Your leads list: where each message came from, newest first. 
Filter it, or download it as a CSV file.⌉[

Your leads list: where each message came from, newest first. Filter it, or download
it as a CSV file.

[⌊The same leads list on a phone, with this month's counts.⌉⌊The same leads list
on a phone, with this month's counts.⌉[

The same leads list on a phone, with this month’s counts.

[⌊The first run: one button puts the question in a form. Two links let you try it,
as an ad click and with no source.⌉⌊The first run: one button puts the question 
in a form. Two links let you try it, as an ad click and with no source.⌉[

The first run: one button puts the question in a form. Two links let you try it,
as an ad click and with no source.

## Installation

 1. Install and activate Contact Form 7.
 2. In Plugins › Add New, search for Fromwell, then install and activate it.
 3. Open Contact › Fromwell and follow its guide: put the question in a form, then 
    send yourself a message from each of its try links.

## FAQ

### Does Fromwell send anything to Google, Meta or anyone else?

No: nothing is sent to Google, Meta, Microsoft or any other service. Fromwell only
reads the address the visitor arrived on and the referring site, in the visitor’s
own browser, and the source goes only with the form the visitor sends, to your own
site’s database and mail.

### Why do some messages say “Said” instead of “Seen”?

Said means the site could not see where the visitor came from, so it asked, and 
the visitor answered. Browsers, apps and privacy settings hide a lot. Safari may
delete what a site keeps in the browser after 7 days without a visit, and it takes
some click marks off links opened in a private window, from Mail or from Messages.
A visitor may have found you on another device. An ad link may carry no campaign
tags. JavaScript may be off, or the visitor may have declined consent. Each time,
the site cannot see the source, so it asks.

### Will visitors who came from my ads see the question?

Not when the ad’s link carries a campaign tag or the ad network’s click mark: the
site sees where they came from and does not ask — unless you tick “Ask everyone,
even when the source was seen” on the Settings tab.

### Why do I still see the question?

The question shows when the site could not see where you came from, for example 
when you typed the address or opened a bookmark. If your site has a consent plugin,
the question also keeps showing until you allow the consent category on its banner.

The other way round: your browser keeps the first visit’s source, so once you have
opened a link with a campaign tag, the question stays hidden for you. To see it 
again as a visitor with no source, open the page in a new private window.

### Can a visitor skip the question by faking a source?

Yes. A visitor can open a link with a made-up campaign tag, and the question then
stays hidden for them. Their message is still sent, and it says Seen, with that 
tag. “Seen” is what the visitor’s browser sent, not a verified fact.

### What does “first visit” mean?

The first visit this browser kept. A visitor who cleared their browser’s data, used
a private window or another device, or whose note ended after the days you chose,
starts again with a new first visit.

### Does it show the search words?

No. Search engines do not pass the words a person searched for to the site, so Fromwell
cannot know them. The line names the search engine that sent the visitor, when the
browser passed it.

### Does it work with a page cache?

Yes. The page is the same for every visitor; the visitor’s own browser hides the
question and fills in the source when the form is sent.

### Does it work with a consent plugin?

Yes. When a consent plugin on your site asks visitors first, Fromwell keeps nothing
until the visitor allows the category you chose in “Wait for this consent category”
on the Settings tab, and it deletes its note if they withdraw it. Until then, the
question shows. With no consent plugin, “With no consent plugin” on the Settings
tab decides.

### Does it work on a phone?

Yes. The question and the form are tested in Safari on iPhone and iPad (Apple’s 
simulators) and in Chrome on Android (the emulator).

### How does the source reach my e-mail?

On Contact › Fromwell, press “Add the source line to this form’s mail”: the line,
labelled Seen, Said or Not known, then ends the e-mail that form sends you. The 
copy a visitor may get never carries it. You can also type the mail tag [_fromwell]
where you want the line in a form’s mail.

### Where do I see where my messages came from?

On Contact › Fromwell. The Leads tab lists each message’s source, newest first, 
with filters by date, form, label, channel, answer and campaign. The button “Download
these as a CSV file” gives you the same rows, and a cell a spreadsheet would run
as a formula is kept as plain text.

### How do I try it before a real visitor comes?

The guide on Contact › Fromwell gives you two links to a page with your form: one
opens it as an ad click, one as a visit with no source. Send yourself a message 
from each. Both reach you by e-mail as usual, and the list marks them test and leaves
them out of the month’s counts.

### Can the question be required?

Yes. Write its form-tag as [fromwell_ask*]: a visitor who is shown the question 
must answer it. A visitor who is not shown the question is never stopped by it.

### Does the source go to Akismet?

No. When Contact Form 7 asks Akismet whether a message is spam, Fromwell takes its
own field out of what is handed over. Everything else stays as Contact Form 7 made
it.

### Does Fromwell keep the visitor’s name or e-mail?

No. Fromwell keeps one row per message with where it came from, never the name, 
e-mail address, message, files, IP address or browser. Rows older than 365 days 
are deleted, or after the time you choose in “Delete list rows older than” on the
Settings tab.

### Does it change my forms?

Only when you press “Add the question before the Send button” on the Forms tab: 
Fromwell then adds its question to that form. Undo, or “Take the question out” on
the Forms tab, takes it out again.

### What can I change, and where?

Everything is on Contact › Fromwell.

 * Settings tab › “The question”: the words of the question.
 * Settings tab › “The answers”: the answers a visitor picks from, one on each line.
 * Settings tab › “Show a box for Other”: a box where the visitor types their own
   answer.
 * Settings tab › “Ask everyone, even when the source was seen”: the question for
   every visitor. Off at first.
 * Settings tab › “Remember a visitor’s source for”: 30, 60, 90 or 180 days. 60 
   at first.
 * Settings tab › “The line names”: the newest source with the first visit’s date,
   or the first source.
 * Settings tab › “Read these from the address”: which campaign tags and click marks
   Fromwell reads.
 * Settings tab › “Wait for this consent category”: Marketing at first, or Statistics.
 * Settings tab › “With no consent plugin”: “Store the source”, or “Only store it
   when a consent plugin says yes”.
 * Settings tab › “Keep a list of messages with their source”: the list on the Leads
   tab. On at first.
 * Settings tab › “Delete list rows older than”: 90, 180 or 365 days, or never. 
   365 at first.
 * Settings tab › “Delete older rows now”: deletes those rows at once.
 * Settings tab › “Delete Fromwell’s data when the plugin is deleted”: on at first.
 * Forms tab › “Add the question before the Send button”, “Undo” and “Take the question
   out”.
 * Forms tab › “Add the source line to this form’s mail” and “Take the source line
   out of its mail”.
 * Leads tab › “Download these as a CSV file”.

### What stays when I switch Fromwell off or delete it?

Deleting Fromwell removes its settings, its list and its scheduled jobs, on each
site of a network, unless you chose on its Settings tab to keep them. Your forms
stay as they are, and so does the question you added: if Fromwell is off or deleted,
visitors see its tag as plain text in the form, so press “Take the question out”
on the Forms tab first. The form still sends. The source line inside a message that
Flamingo kept stays with that message, like the e-mail that already reached you.
The note in a visitor’s own browser stays there until they clear it, and nothing
reads it.

### Is Fromwell made by the Contact Form 7 team?

No. Fromwell is an independent plugin, not affiliated with or endorsed by Contact
Form 7 or its author.

## Reviews

There are no reviews for this plugin.

## Contributors & Developers

“Fromwell – Lead Source for Contact Form 7” is open source software. The following
people have contributed to this plugin.

Contributors

 *   [ Nolan T. ](https://profiles.wordpress.org/lalokupfer/)

[Translate “Fromwell – Lead Source for Contact Form 7” into your language.](https://translate.wordpress.org/projects/wp-plugins/fromwell-lead-source-for-contact-form-7)

### Interested in development?

[Browse the code](https://plugins.trac.wordpress.org/browser/fromwell-lead-source-for-contact-form-7/),
check out the [SVN repository](https://plugins.svn.wordpress.org/fromwell-lead-source-for-contact-form-7/),
or subscribe to the [development log](https://plugins.trac.wordpress.org/log/fromwell-lead-source-for-contact-form-7/)
by [RSS](https://plugins.trac.wordpress.org/log/fromwell-lead-source-for-contact-form-7/?limit=100&mode=stop_on_copy&format=rss).

## Changelog

#### 1.0.0

 * First release.
 * The question “How did you hear about us?” in your Contact Form 7 form, in your
   own words and answers, hidden when the site saw where the visitor came from.
 * Each message labelled Seen, Said or Not known, in your e-mail and in Flamingo’s
   copy of the message.
 * The list of each message’s source on Contact › Fromwell, with its filters and
   a CSV file.
 * A wait for consent, suggested wording for your privacy policy, and a clean uninstall.
 * What makes Fromwell different: it asks “How did you hear about us?” in your Contact
   Form 7 form only when it could not see where the visitor came from.

## Meta

 *  Version **1.0.0**
 *  Last updated **5 hours ago**
 *  Active installations **Fewer than 10**
 *  WordPress version ** 6.7 or higher **
 *  Tested up to **7.1.4**
 *  PHP version ** 7.4 or higher **
 * Tags
 * [attribution](https://wordpress.org/plugins/tags/attribution/)[contact form 7](https://wordpress.org/plugins/tags/contact-form-7/)
   [lead source](https://wordpress.org/plugins/tags/lead-source/)[lead tracking](https://wordpress.org/plugins/tags/lead-tracking/)
   [UTM](https://wordpress.org/plugins/tags/utm/)
 *  [Advanced View](https://wordpress.org/plugins/fromwell-lead-source-for-contact-form-7/advanced/)

## Ratings

No reviews have been submitted yet.

[Your review](https://wordpress.org/support/plugin/fromwell-lead-source-for-contact-form-7/reviews/#new-post)

[See all reviews](https://wordpress.org/support/plugin/fromwell-lead-source-for-contact-form-7/reviews/)

## Contributors

 *   [ Nolan T. ](https://profiles.wordpress.org/lalokupfer/)

## Support

Got something to say? Need help?

 [View support forum](https://wordpress.org/support/plugin/fromwell-lead-source-for-contact-form-7/)