Part 2 — Visitor ID in every lead · abdteam.com
One hidden field, observix_visitor_id, on each lead form. The pixel fills it; the submission carries it into the CRM.
- What
- Hidden field observix_visitor_id on Fluent Forms #3, #9, #4, #13, #6, #7
- Where
- WP Admin → Fluent Forms → Editor · Advanced Fields → Input Hidden
- Done when
- Done — the field is on every form and fills on load
What we found on the site
Checked live on 2026-09-22: 6 lead forms. The pixel fills any input named observix_visitor_id on load, on submit and every 3 s — no JavaScript to write.
| Form | Name | Where |
|---|---|---|
| #3 | Free Estimate | /contact-free-estimate/ |
| #9 | Sidebar Quote | home + every service page |
| #4 | Quick Quote | service pages, inline |
| #13 | Siding Estimate | /get-a-siding-estimate/ |
| #6 | Free Inspection | /free-inspection/ |
| #7 | Quick Service | /sacramento/balcony-repair/ |
pixel.js
cookie obx_vid = 01a0c8ac-2a12-7e9c-b0a2-059ecef85246
pixel fills the hidden field
input[name="observix_visitor_id"] · on load, on submit, every 3 s
Fluent Forms submission
forms #3, #9, #4, #13, #6, #7 · together with utm_source, utm_medium, utm_campaign…
CRM lead
observix_visitor_id as a custom field
Steps
- 01
Hidden field on forms #3, #9, #4, #13, #6, #7
Fluent Forms → form → Editor → Advanced Fields → Input Hidden. Name / Key exactly
observix_visitor_id, value empty. Done by ObserviX. - 02
The submission now carries it
Every lead from these forms arrives wherever it goes today with one more field,
observix_visitor_id. Part 7 maps it onto the CRM lead.
Verify
// on https://abdteam.com/contact-free-estimate/ — wait ~5 s after load
document.querySelector('input[name="observix_visitor_id"]').value
// PASS: "01a0c8ac-2a12-7e9c-b0a2-059ecef85246" FAIL: "" (wait 3 s, re-run) or null (field missing)- The console line above returns a UUID on every form page of abdteam.com
- A test submission's notification / entry shows observix_visitor_id filled