RIVIL

← Integrations

RIVIL CRM WordPress plugin

WordPress plugin that sends the lead to CRM, with UTM

If your site runs on WordPress, we install the plugin and connect forms to CRM. The plugin keeps UTM from first and last visit and sends the lead to RIVIL CRM. If CRM is down at that moment, the lead waits in a queue and retries.

crm.rivil.app/leads/4821
Lead journey · Andrei Popescu
Site visits before form submit
12 Oct
google / cpc · Search brand
First touch
15 Oct
facebook / paid · Spring 2026
18 Oct
direct
Last touch
18 Oct
Form submitted · Quote request
New lead
Came via Google Ads, converted after a Facebook ad. Both campaigns show in CRM.
How it works

Steps at a glance

We install the plugin

We put it on your WordPress site and link it to your CRM company with the API key. You do not touch configuration.

We map forms

The plugin works with any form on the site. We map fields: name, phone, email, and any extra questions you want in CRM.

UTM is stored automatically

The plugin keeps source, medium, campaign, term, and content for first and last visit. Default retention is 30 days.

Visitor submits the form

Fields leave with UTM attached. You do not need hidden fields in every form to capture campaign.

CRM opens the lead

By phone or email, CRM sees a new or known person. The form lands in history with page and campaign.

If CRM does not respond

The lead stays in a queue and retries several times. Logs show what was sent and what failed.

Why a plugin instead of a hidden field on every form

You can put utm_source in a hidden field until someone rebuilds the form and forgets it, or until a visitor clicks an ad today and submits a week later with no params in the link. Then the lead shows as “direct” even though it came from a campaign.

The plugin stores params in a cookie, separately for first and last source, 30 days by default. First source stays first; last updates on each new visit. You see which ad brought them and which touch convinced them to write, which are not always the same.

Which forms it works with

The plugin works with any form on the site, whether built with Elementor, Contact Form 7, or something else. For each form we map which field is name, phone, and email. Fields that match CRM land on the lead; the rest stay in form data, visible in history.

If the site is not WordPress, you do not need the plugin: we wire the form straight to CRM. The result in CRM is the same.

crm.rivil.app/leads/4821
Andrei Popescu
Assignment
SourceMeta Ads
CampaignSpring 2026
FormQuote request
OwnerMMaria
Value$3,500
StatusScheduled
History
Today 10:42
Status changed: Scheduled
Today 09:15
Call made, asked for Thursday appointment
Yesterday 18:03
Form submitted on website
Yesterday 18:03
Lead created from “Spring” campaign

What goes to CRM

At least one phone or email, otherwise CRM cannot recognize the person. Name, campaign, and the rest help but do not block sending. First and last visit UTM attach from the cookie when tracking is on.

We can exclude logged-in users and admins so your tests do not fill the funnel. The cookie does not replace marketing consent on the site, and tracking can be turned off in plugin settings.

The queue when CRM does not respond

A thank-you page does not prove the lead reached CRM. If the API fails at that moment, a form without a queue loses the lead. The plugin keeps it in a local queue and retries until it gets a response.

In WordPress admin you see the queue and log: which form, CRM response, remaining errors. A “duplicate” response is correct, not a failure: you prefer one record per person.

crm.rivil.app/leads/4821
Lead journey · Andrei Popescu
Site visits before form submit
12 Oct
google / cpc · Search brand
First touch
15 Oct
facebook / paid · Spring 2026
18 Oct
direct
Last touch
18 Oct
Form submitted · Quote request
New lead
Came via Google Ads, converted after a Facebook ad. Both campaigns show in CRM.

dataLayer event for Google Tag Manager

The plugin can push an event to dataLayer on submit for a Tag Manager tag. It is a separate switch, so you can leave it off if you do not need it.

A browser tag can be lost if the visitor closes the page or a blocker stops it. The CRM lead does not depend on it: it leaves from form data.

How the lead looks in CRM and what the plugin does not do

In CRM the person has source and campaign. Another form from the same phone or email does not create a second record; existing data is not overwritten. If the form asks for company id, you can map it and CRM can fill company details through RIVIL Firme.

The plugin does not replace a cookie banner and does not optimize ads. It delivers the lead with attribution. Statuses, Conversions API, and ROAS are configured in CRM. For booking, open slots, and reminders use the booking page in ERP.

Questions

What people ask

Does it work with the form I already have?

Yes. The plugin works with any form type. We map fields; you do not rewrite the form.

Do I need UTM in hidden fields?

No. The plugin we install keeps source, medium, campaign, term, and content for first and last visit, 30 days by default, and sends them with the form.

What if CRM does not respond?

The lead goes into a site queue and retries. The log shows the error.

Does it duplicate if someone submits twice?

No. If phone or email already exists in the same company, the new form adds to the person’s history.

Can I exclude my own tests?

Yes. We exclude logged-in users and admins so internal tests do not enter the funnel.

My site is not WordPress. What then?

We connect the form directly to the CRM API. Same result: lead with source and campaign.

Next

See what you can do with sources

With first and last visit UTM plus source lists, you see the full path of a lead.

Attribution paths in CRM

RIVIL Websites

Need a site too?

If you need a new site, we build it on your brand, fast with SEO, with forms connected to CRM from day one.

Want it wired to your company?

Tell us on a call what you use today and we show the integration on a demo environment, free for 7 days.

Popular pages