
Look, I'm going to be straight with you.
If you're running InstaPage forms and NOT tracking submissions properly, you're basically burning cash. You have no idea which ads convert, which pages work, or what your actual cost per lead is.
That's insane.
The good news? You can fix this in 15 minutes. I'm going to give you the exact code and the exact steps. No fluff. No theory. Just copy, paste, and print money.
Why This Matters
Every InstaPage form submission should fire into:
Google Analytics 4 (so you know what converts)
Google Ads (so you can optimize campaigns)
Meta Pixel (so Facebook stops showing ads to people who already converted)
Whatever else you're using (Mixpanel, Piwik Pro, etc.)
Without this setup, you're flying blind. With it, you're making data-driven decisions that actually grow your business.
Let's get into it.
The InstaPage Form Event Listener Code
First, you need this code. It listens for successful InstaPage form submissions and pushes an event to Google Tag Manager's dataLayer.
html
<script>
window.addEventListener('load', function() {
if (typeof window.InstapageForms !== 'undefined') {
window.InstapageForms.forEach(function(form) {
form.onSubmit(function(event) {
if (event.success) {
window.dataLayer = window.dataLayer || [];
window.dataLayer.push({
'event': 'formSubmissionSuccess',
'formId': event.formId,
'formName': event.formName || 'Unknown Form',
'pageUrl': window.location.href,
'pagePath': window.location.pathname
});
}
});
});
}
});
</script>What this does: When someone successfully submits an InstaPage form, it fires a formSubmissionSuccess event into GTM. Simple. Powerful. Profitable.
The Exact GTM Setup (Step-By-Step)
Step 1: Create the Custom HTML Tag
Log into Google Tag Manager
Click Tags → New
Name it: InstaPage Form Listener
Click Tag Configuration
Select Custom HTML
Paste the entire code block above into the HTML field
Step 2: Set the Trigger
In the same tag, click Triggering
Click the + to create a new trigger
Name it: All Pages - DOM Ready
Choose trigger type: DOM Ready
Set "This trigger fires on": All DOM Ready Events
Save the trigger
Save the tag
Step 3: Create the Custom Event Trigger
Go to Triggers → New
Name it: InstaPage Form Success
Choose trigger type: Custom Event
Event name: formSubmissionSuccess (must match exactly)
Set "This trigger fires on": All Custom Events
Save
Step 4: Fire Your Conversion Tags
Now use that trigger for EVERYTHING:
For Google Analytics 4:
Create new tag → Google Analytics: GA4 Event
Select your GA4 Configuration Tag
Event Name: form_submission or generate_lead
Trigger: InstaPage Form Success
Save
For Google Ads Conversion:
Create new tag → Google Ads Conversion Tracking
Enter your Conversion ID and Conversion Label
Trigger: InstaPage Form Success
SaveStep 5: Add Page-Specific Conditions (Critical)
You don't want form submissions from EVERY page firing conversions. Only specific landing pages should count.
Edit each conversion tag
Go to Triggering → Click your trigger → Add Exception or modify conditions
Add condition: Page Path → contains → /your-landing-page-url/ Save
Test Before You Celebrate
Here's your pre-launch checklist:
Testing Checklist
GTM Preview Mode is active
Submit a test form on your InstaPage
Check GTM Preview - see formSubmissionSuccess event fire
Verify all conversion tags fired successfully
Check Google Analytics real-time reports - see the event
Check Google Ads conversions (may take 24-48hrs to show)
Check Meta Events Manager - see Lead event
Test on mobile (different browsers if possible)
Publish GTM container when tests pass
Common Issues & Fixes
DataLayer not firing?
Some InstaPage forms (especially pages with multiple forms) don't support the listener
Fallback: Use GTM's built-in Form Submission trigger type instead
Set conditions to filter only InstaPage forms
Events firing on wrong pages?
Add stricter trigger conditions (Page Path, Page URL, etc.)
Use Google Tag Manager's firing conditions to whitelist only conversion pages
Conversions not showing in ads platforms?
Give it 24-48 hours (seriously)
Verify conversion IDs/Pixel IDs are correct
Check that cookies/tracking is enabled (privacy settings matter)
Privacy & Compliance
Don't be the person who gets their account shut down.
Ensure proper cookie consent before firing marketing tags
Use GTM's Consent Mode v2 for Google tags
Add consent checks to your triggers (block tags until consent is given)
Stay compliant with GDPR, CCPA, and whatever regulations apply to you
The Bottom Line
You now have:
The exact listener code ✅
The exact GTM setup ✅
The testing process ✅
The troubleshooting guide ✅
There's no excuse not to implement this today.
Every day you wait is another day you're making decisions with incomplete data. Every untracked conversion is money left on the table.
Set this up. Test it. Scale what works.
Need Help Setting This Up?
If you want this done right the first time (without the headache of debugging tags at 2 AM), we handle the entire implementation for you:
Full GTM audit and cleanup
InstaPage form tracking setup
Multi-platform conversion tracking (GA4, Ads, Meta, etc.)
Privacy compliance configuration
Ongoing optimization and monitoring
Book a free 30-minute tracking audit and we'll show you exactly what you're missing
