Overview
Learn how to understand and resolve event match quality warnings, diagnostics errors in Meta Events Manager, and investigate unexpected events after setting up PixelFlow's Conversions API (CAPI).
What You'll Learn
This guide will help you:
Understand why PageView events show warnings about empty user data
Diagnose and fix reduced lead counts after CAPI installation
Investigate phantom or unexpected events in Meta Events Manager
Resolve common diagnostics warnings without affecting ad performance
Understanding Event Match Quality Scores
What is Event Match Quality?
Event match quality is a score from 0 to 10 that measures how effectively the customer information sent with your events matches to Meta accounts. Higher scores mean better ad performance and more accurate conversion attribution.
Meta calculates this score based on:
The quality of customer information parameters you're sending
The percentage of events successfully matched to Meta accounts
Data from the last 48 hours of activity
What's a good score? PixelFlow typically achieves event match quality scores of 8.3-9.3/10 for conversion events like Lead, Purchase, and ViewContent. PageView events naturally score lower (often 5-7/10) because they happen before user data is collected.
How EMQ Scores Are Actually Calculated
Through extensive testing and analysis, PixelFlow has reverse-engineered Meta's event match quality scoring algorithm. Here's exactly how much each parameter contributes to your score:
Base Score (Always Available): 5.2/10
These parameters are automatically captured by PixelFlow on every event:
fbp (Facebook Browser ID): Cookie identifying the browser
IP address: User's network location
User agent: Browser and device information
Geographic data: Country, state, city derived from IP
Together, these provide a baseline score of 5.2 out of 10, which is why PageView events (with no user-provided data) typically score around 5-6/10.
Additional Parameters and Their Values
Adding user information increases your score as follows:
Parameter | Score Increase | Cumulative Score |
|---|---|---|
Base (fbp + IP + user agent + geo) | — | 5.2/10 |
+1.7 | 6.9/10 | |
fbc (Facebook Click ID) | +1.5 | 8.4/10 |
Phone number | +1.1 | 9.5/10 |
Gender | +0.5 | 10.0/10 |
Important finding: First name and last name provide 0 increase to event match quality scores, despite Meta listing them as acceptable parameters. PixelFlow's testing shows they have no measurable impact on EMQ.
Why This Matters for Your Tracking
Understanding the actual score calculation helps you prioritize which data to collect:
Email is the highest-value user parameter (+1.7), making form fields that capture email critical for high EMQ
fbc (click ID) is nearly as valuable (+1.5) and is automatically captured when users click Facebook ads
Phone numbers add significant value (+1.1), so including phone fields in forms boosts scores meaningfully
Don't waste time on first/last names for EMQ purposes - they help with audience building but don't improve match quality
Optimal setup: A Lead event with email + phone number from a user who clicked a Facebook ad (fbc present) will score: 5.2 (base) + 1.7 (email) + 1.5 (fbc) + 1.1 (phone) = 9.5/10 - exactly what PixelFlow typically achieves.
How PixelFlow Discovered This
PixelFlow's engineering team conducted systematic testing by:
Sending thousands of test events with different parameter combinations
Measuring the exact EMQ score for each combination in Meta Events Manager
Isolating the contribution of individual parameters
Validating results across multiple ad accounts and data sources
This research allows PixelFlow to optimize which data to capture and send, ensuring you achieve the highest possible event match quality without collecting unnecessary information.
Why Different Events Have Different Scores
It's completely normal for PageView events to have lower match quality scores than events like Lead, Purchase, or ViewContent. Here's why:
PageView events fire the instant someone lands on your website, before PixelFlow has any identifying information (name, email, phone)
Conversion events (Lead, Purchase, AddToCart) happen later in the journey after users interact with forms or provide information
Engagement events (ViewContent, Schedule) occur when users browse products or book calls, when cookies and tracking data are established
For a detailed explanation of why PageView scores are lower, see How To Improve PageView Event Match Quality Score.
Empty User Data Warnings in PageViews
Why This Warning Appears
When you see diagnostics warnings about "empty" values in PageView events, this is by design and does not indicate a problem with your setup.
PixelFlow sends empty values for user data fields (name, email, phone, gender) that aren't available yet when someone first arrives on your page. This prevents confusion where you'd constantly see a low event match quality score (like 5/10) with no clear way to improve it.
Important: These empty data warnings will not affect your ad performance or tracking accuracy. Meta is simply informing you that the event match quality score reflects the actual available data, not missing data.
What Meta's Warning Actually Says
The diagnostics warning typically states something like: "Event match quality score may drop if empty values are sent for user data parameters."
This is Meta's way of saying: "We're receiving your events, but without user data the match quality will be what you see—not artificially inflated."
Should You Fix This?
No action needed. You can safely ignore these warnings for PageView events. Here's why:
PageView events are meant to track anonymous traffic at the top of your funnel
The warnings don't impact your ad delivery or conversion tracking
Your valuable conversion events (Lead, Purchase) will have high match quality with complete user data
PixelFlow automatically enriches events with user data as soon as it becomes available
Pro tip: Focus your attention on the event match quality scores of your conversion events (Lead, Purchase, Schedule, SubmitApplication). These are the events that drive ad optimization and should consistently score 8+/10.
Diagnosing Reduced Leads After CAPI Setup
Common Symptoms
After installing PixelFlow's CAPI, some users notice:
Fewer leads showing in Meta Events Manager than before
Lead counts that don't match form submissions or bookings
Diagnostics warnings appearing alongside the drop in leads
Why This Can Happen
The most common causes are:
Deduplication working correctly: Before CAPI, you may have been counting duplicate events. CAPI with proper deduplication removes those duplicates, showing the true lead count.
Tracking configuration issues: Event tracking might need additional setup for forms, buttons, or specific pages.
Bot blocking: PixelFlow blocks bot traffic and duplicate page reloads, which may have been inflating your previous lead counts.
Diagnostics errors: Technical issues that need resolution (covered in next section).
Step-by-Step Diagnostic Process
1. Check Your Event Match Quality
Go to Meta Events Manager and click on your data source:
Navigate to the Overview tab
Look at your Lead or conversion event
Click on the event match quality score
Review which parameters are being sent
Good sign: If your Lead events show 8+/10 event match quality, your CAPI setup is working correctly and sending proper user data.
2. Review the Diagnostics Tab
Check for active errors that might be blocking events:
Go to Events Manager
Click Data sources on the left
Select your Pixel/data source
Click the Diagnostics tab
Review any active issues
Common diagnostics errors and their meanings:
"Event parameter value is invalid": Check that your event URLs or tracking classes are configured correctly
"Missing required parameters": Ensure value and currency are set for Purchase events
"Multiple Pixels detected": Remove any duplicate Meta Pixel code from your site
3. Verify Your Tracking Setup
Ensure your forms, buttons, and conversion pages are properly configured:
For form tracking: Check that you've added the required classes to capture name, email, and phone fields. See tracking guides for your platform.
For URL-based tracking: Verify that your thank you pages or confirmation URLs are correctly entered in the PixelFlow dashboard
For button clicks: Confirm that click tracking classes are applied to your CTA buttons
4. Test Your Events in Real-Time
Use Meta's Test Events tool to see events as they fire:
Go to Events Manager
Select your data source
Click Test events in the left menu
Enter your website URL or select browser tracking
Perform a test conversion on your website
Watch for the event to appear in the Test Events panel
Important: If test events show up correctly but you're still seeing reduced leads in reporting, wait 72 hours. Meta diagnostics can take up to 3 days to clear after issues are resolved.
5. Check the PixelFlow Events Log
Your PixelFlow dashboard shows every event sent to Meta:
Log into your PixelFlow account
Navigate to Events Log
Filter by event type (Lead, Purchase, etc.)
Compare the count to what Meta Events Manager shows
If PixelFlow shows more events than Meta, there may be a matching or deduplication issue. If counts are similar, your tracking is working correctly.
Common Fixes for Reduced Leads
Fix 1: Add Missing Tracking Classes
If you're tracking form submissions, you need to add specific classes to form fields so PixelFlow can capture user data:
Identify which form fields need tracking (email, name, phone)
Add the appropriate PixelFlow classes to each field
Publish your changes
Test the form submission
Without these classes, PixelFlow can detect the form submission but cannot send user information parameters, resulting in lower event match quality.
Fix 2: Remove Duplicate Pixel Code
If you have the Meta Pixel installed directly on your site and PixelFlow is also running, you'll get duplicate events and diagnostics errors:
Check your website's code injection areas or header scripts
Look for scripts starting with
<script>!function(f,b,e,v,n,t,s)Remove the old Meta Pixel code
Keep only the PixelFlow script
PixelFlow provides both client-side (Pixel) and server-side (CAPI) tracking automatically, so you don't need separate Pixel code.
Fix 3: Mark Diagnostics Issues as Resolved
After fixing the underlying issues:
Go to the Diagnostics tab in Events Manager
Click Review Solution next to each error
Select Mark as resolved or indicate you've fixed the issue
Wait 72 hours for Meta to verify the fix
If the issue is truly resolved, Meta will automatically move it to "Previously detected." If it reappears, you'll need to investigate further.
Investigating Phantom or Unexpected Events
What Are Phantom Events?
Phantom events are conversion events (like Lead or Purchase) that appear in Meta Events Manager but don't correspond to actual form submissions, bookings, or purchases. They can also be events that fire multiple times for a single action.
Common Causes
1. Testing or Admin Traffic
If you or your team are testing forms or clicking through your site, those actions can trigger real events:
Form submissions during testing
Page visits to confirmation URLs
Button clicks while reviewing your site
2. Facebook's Web Crawlers
Meta's bots (FacebookExternalHit, Meta-ExternalFetcher) can crawl your site and trigger events if they visit event URLs like thank-you pages or confirmation pages.
How to identify bot traffic: Check the PixelFlow Events Log or Meta Test Events for the user agent. Bot events will show user agents like "FacebookExternalHit" or "facebookexternalfetcher."
3. Malformed Event Triggers
Events configured incorrectly can fire at the wrong time:
Lead events firing on button click instead of form submission success
Purchase events firing on product page views instead of order confirmation
Multiple event classes applied to the same element
4. Duplicate Event Code
If you have custom event tracking code in addition to PixelFlow, events may fire twice:
Old GTM (Google Tag Manager) tracking still active
Custom JavaScript triggering Meta Pixel events
Platform-specific integrations (like Webflow or Squarespace) also sending events
How to Investigate Phantom Events
Step 1: Get Event Details from PixelFlow
Contact PixelFlow support with the date and time of the unexpected event. They can provide the full event payload, which includes:
IP address and location: See where the event originated
User agent: Identify if it was a bot or real browser
Event source URL: The page that triggered the event
fbclid parameter: Shows if the user came from a Facebook ad click
User journey: All pages visited before the event
Example payload insight: If the fbclid parameter shows just "fbclid" instead of a long string like "PAZXh0bgNhZW0BMABhZGlk...", it indicates a test or bot visit, not a real user from an ad.
Step 2: Check Event Source URL
Look at where the event fired:
Is it the correct confirmation or thank-you page?
Did it fire on a page you're using for testing?
Is there custom code on that page triggering events?
If the event fired on an unexpected page, you may have:
The wrong URL configured in PixelFlow event settings
Event classes accidentally added to multiple pages
Custom code or integrations firing events
Step 3: Review Platform-Specific Integrations
If you're using Webflow, Framer, or Squarespace, check for:
Webflow: Custom code in page settings or interactions triggering events
Framer: Multiple tracking scripts or incorrect class assignments on components
Squarespace: Built-in Meta integrations that might duplicate PixelFlow events
Step 4: Use Test Events to Reproduce
Try to recreate the phantom event:
Open Meta Events Manager Test Events
Navigate to the page or perform the action that should trigger the event
Watch for any unexpected events in the test panel
Note the exact moment events fire (page load, button click, form submission)
This helps you identify whether events fire too early (on page load instead of form submit) or multiple times (once from PixelFlow, once from custom code).
Fixing Phantom Events
Fix 1: Block Meta Bots with robots.txt
To prevent Facebook's web crawlers from triggering events on confirmation pages:
Access your website's
robots.txtfile (usually at yoursite.com/robots.txt)Add these lines:
User-agent: FacebookExternalHit
Disallow: /thank-you
Disallow: /confirmation
User-agent: Meta-ExternalFetcher
Disallow: /thank-you
Disallow: /confirmationReplace /thank-you and /confirmation with your actual conversion page URLs.
Note: Meta-ExternalFetcher may bypass robots.txt for security checks, and FacebookExternalHit may bypass it for user-initiated requests. This fix helps but may not block 100% of bot visits.
Fix 2: Move Event Trigger to Form Success
If Lead events fire on button clicks instead of successful form submission:
Remove event tracking classes from the submit button
Add them only to the form element itself
Configure event triggers based on successful submission (thank-you page load or success message)
Test to ensure events only fire after form validation passes
Fix 3: Remove Duplicate Tracking Code
Search your website for any duplicate event tracking:
Check page-specific custom code sections
Review Google Tag Manager for old Facebook Pixel tags
Disable platform integrations (Webflow/Squarespace Meta apps)
Remove any
fbq('track', 'Lead')calls in custom JavaScript
PixelFlow handles all event tracking, so additional tracking code will create duplicates.
Fix 4: Use Event Deduplication
PixelFlow automatically deduplicates events using unique event IDs. If you see duplicate events in Meta Events Manager:
Check that you don't have multiple Pixels sending the same event
Verify only PixelFlow is sending server events (check for "Server" label in Events Manager)
Contact PixelFlow support to confirm deduplication is enabled
Learn more about how PixelFlow handles deduplication in Are events deduplicated by PixelFlow?
Understanding the Diagnostics Tab
Accessing Diagnostics
The Diagnostics tab in Meta Events Manager is your main tool for identifying issues:
Go to Meta Events Manager
Click Data sources on the left
Select your Pixel or dataset
Click the Diagnostics tab
A red icon next to your data source indicates critical issues that need attention.
Types of Diagnostics Messages
Critical Errors (Red)
These prevent events from being tracked and need immediate attention:
Pixel not firing on any pages
Invalid Pixel ID or access token
Events blocked by Content Security Policy
Warnings (Yellow)
These may affect data quality but don't stop tracking:
Empty user data parameters (covered above)
Missing value or currency on Purchase events
Event parameter formatting issues
Info Messages (Blue)
These are informational and rarely require action:
Suggestions to improve match quality
Notifications about event volumes
Tips for better tracking
How to Clear Diagnostics Warnings
Click Learn how to fix this issue for detailed guidance
Follow the recommended steps to resolve the issue
For web and app issues, click Review Solution
Mark the issue as resolved
Wait 24-72 hours for Meta to verify
If Meta doesn't detect the issue the following day, it automatically moves from "Active" to "Previously detected."
Success indicator: When diagnostics warnings move to "Previously detected" and stay there, your fix worked. If they reappear after 3 days, the underlying issue isn't fully resolved.
Best Practices for Maintaining High Event Quality
1. Focus on Conversion Events
Prioritize event match quality for events that drive ad optimization:
Lead
Purchase
CompleteRegistration
Schedule (for booking appointments)
SubmitApplication
These events should consistently score 8+/10 in event match quality.
2. Send Complete User Data
Based on PixelFlow's research into EMQ scoring, prioritize capturing these parameters:
Priority | Parameters | EMQ Impact |
|---|---|---|
Critical | +1.7 points | |
High | fbc (Click ID - automatic from ads) | +1.5 points |
High | Phone number | +1.1 points |
Low | Gender | +0.5 points |
None | First name, Last name | No measurable impact |
PixelFlow automatically captures base parameters (fbp, IP, user agent, geo) worth 5.2 points. When you configure form tracking to capture email and phone, you can reach 9.5/10 for users coming from Facebook ads.
Quick win: Focus your form tracking setup on email and phone fields. These two parameters alone can take your score from 5.2 (base) to 8.0/10, even without ad click data.
For more details on event parameters, see Required Meta Events Parameters.
3. Monitor Regularly
Check your event match quality and diagnostics weekly:
Review scores in Meta Events Manager
Check the PixelFlow Events Log for unusual patterns
Look for spikes or drops in event volumes
Verify conversions match your actual business results
4. Test After Any Website Changes
Whenever you update your website, forms, or tracking setup:
Test events using Meta's Test Events tool
Submit a test form and verify the Lead event fires
Check that user data parameters are captured
Confirm event match quality remains high
5. Keep PixelFlow and Meta Pixel Code Separate
Never run both PixelFlow and standalone Meta Pixel code. PixelFlow includes:
Meta Pixel (client-side tracking)
Conversions API (server-side tracking)
Automatic deduplication
Bot blocking
Additional Pixel code creates duplicates and lowers data quality.
When to Contact Support
Reach out to PixelFlow support if:
Event match quality remains below 7/10 for conversion events after following this guide
You continue seeing reduced leads 72 hours after fixing diagnostics issues
Phantom events appear regularly and you can't identify the source
Critical errors in diagnostics persist after attempting fixes
You need the full event payload to investigate a specific event
PixelFlow support can access backend logs, event payloads, and server-side data that isn't visible in Meta Events Manager, making it easier to diagnose complex issues.