Home
Offers & Tracking
Tracking Fundamentals
Conversions Error Code Reference Guide
Conversions Error Code Reference Guide

SERIES:

Conversions Error Code Reference Guide

Complete glossary of potential error code messages associated with conversions.

Overview

Conversion errors prevent your conversions from being properly recorded or attributed. Each error code indicates a specific problem - from missing transaction IDs to security blocks to configuration issues.

This guide provides three interactive tools to help you diagnose and fix conversion errors faster:

  • Error Code Lookup: Search any error code to see causes and step-by-step fixes
  • Troubleshooting Flowchart: Answer a few questions to find your exact solution
  • Diagnostic Generator: Create formatted support tickets with all required details
Most Common Mistake Users often say "my conversions aren't tracking" without checking if there's an error code explaining why. Always check the Conversion Report → Error Code column first. Error codes tell you exactly what's wrong and how to fix it.

Interactive Error Lookup

Search by error code number or message to instantly see causes and fixes. Click any card to flip and see detailed troubleshooting steps.

🔍 Error Code Lookup
Search by error code number (e.g., "13") or message (e.g., "invalid click") to find causes and fixes
🔍
No errors found
Try a different search term or category

Troubleshooting Flowchart

Not sure which error code you have? Follow the interactive decision tree to find your exact problem and solution path.

🗺️ Troubleshooting Flowchart
Answer a few questions to find the exact fix for your conversion error
Where did you first notice the conversion error?
📊
Conversion Report
Error appears in the main Conversion Report
🔍
Debug Info / Logs
Found error in Advertiser Postback Report or Debug Info
No Conversion at All
Conversion never appeared in system
What error code range are you seeing?
🚫
Error 1-5
Throttle, Whitelist, Caps, Lookback
🔗
Error 6-11
Protocol, Domain, Network issues
🎯
Error 12-14
Transaction ID, Click, Offer mismatch
⚙️
Error 15-20
Offer setup, status, expiration
🔐
Error 21-24
Security tokens, fraud, device matching
🎛️
Error 25-27
Event mismatch, Postback Controls, Pass Through
What HTTP response code are you seeing?
📭
204 No Content
Postback accepted but no conversion appears
⚠️
400 Bad Request
Malformed URL or wrong parameters
🔒
403 Forbidden / 401 Unauthorized
Access denied or authentication failure
💥
500 Server Error
Partner's server issue
What tracking method are you using?
📝
JavaScript SDK
Using ClickScript on landing page
🔄
Server-to-Server (S2S)
Advertiser fires postback from their server
📧
Email Attribution
Clickless / Coupon code tracking
✅ Configuration & Policy Errors (1-5)
Error 1 (Throttled): Check Postback Controls → Throttle must be 0-100%
Error 2-3 (Whitelist): Add advertiser IP/domain to Advertisers → Settings → Whitelist. Check Advertiser Postback Report for actual source IP.
Error 4 (Over Caps): Check Offers → Caps. Conversion is in Pending, not rejected. Manually approve or increase caps.
Error 5 (Above Lookback): Increase Offers → Attribution → Lookback Window (default 30 days)
✅ Protocol & Domain Issues (6-11)
Error 6-7 (Protocol): Ensure postback uses https://. Check Offers → Require HTTPS setting.
Error 10 (Domain Mismatch): Click domain must match conversion domain. Update partner links if domain changed.
Error 11 (Invalid Network): Verify NID parameter in postback matches Network Settings → Network ID
Error 16-17 (Invalid Domain): Add domain to Network Settings → Tracking/Conversion Domains. Check DNS configuration.
✅ Tracking & Attribution (12-14)
Error 12 (Invalid Transaction ID): Check landing page has ClickScript. Test DevTools → Cookies → _ef_transaction_id. For S2S, verify advertiser captured TID from URL.
Error 13 (Invalid Click) - MOST COMMON: Click may be >90 days old (data purged). Check Click Report by TID. Verify click wasn't rejected. Test in Incognito mode.
Error 14 (Offer Mismatch): Click Offer ID ≠ Conversion Offer ID. Check both reports. Ensure advertiser uses offer-specific postback URLs.
✅ Offer Configuration (15-20)
Error 15 (Invalid Offer): Offer doesn't exist or was deleted. Verify Offers → Manage. Update advertiser postback with correct offer_id.
Error 18 (Inactive Offer): Set offer to Active in Offers → General → Status. Check Start/End dates.
Error 19 (Expired Offer): Extend End Date in Offers → General Tab or remove date for evergreen offers.
Error 20 (Below Lookback): Conversion too fast (possible bot). Check Attribution → Minimum conversion time.
✅ Security & Fraud (21-24)
Error 21 (Verification Token): Get token from Advertisers → Settings → Verification Token. Add &security_token=XXX to postback URL.
Error 22 (Fraudulent): Check Conversion Report → Fraud Flag. For AppsFlyer, review fraud logs. Manually approve if false positive.
Error 23-24 (Device ID Mismatch): IDFA/GAID changed between click and conversion. Verify both are passed. Check MMP SDK implementation.
✅ Advanced Controls (25-27)
Error 25 (Event Mismatch): Check Offers → Revenue & Payout → Events. Verify event_id exists. Use event_id=0 for base conversion.
Error 26 (Postback Control): Navigate to Offers → Postback Controls. Test by disabling rules to isolate which one is blocking.
Error 27 (Pass Through): Check Offers → Forwarding Rules. Verify primary offer isn't paused/over cap. If intentional, working as configured.
✅ 204 Response: Postback Received But Conversion Didn't Record
Likely Cause: Postback was accepted but validation failed (duplicate, invalid click, over caps, etc.)
Step 1: Check Conversion Report with "Show Rejected" enabled
Step 2: Look for error code in Error column - most likely #8 (Duplicate) or #13 (Invalid Click)
Step 3: Use Error Code Lookup above to find specific fix for that error
✅ 400 Error: Malformed Postback
Check URL Encoding: Special characters must be URL-encoded (spaces = %20, & within values = %26)
Verify Required Parameters: Must have transaction_id OR offer_id + partner_id at minimum
Check Advertiser Postback Report: See exact URL that was sent and specific error message
Test in Postman: Copy exact URL and test outside advertiser's system to isolate issue
✅ 403/401 Error: Access Denied
Most Common: Advertiser Whitelist blocking the IP/domain (Error #2 or #3)
Check Whitelist: Advertisers → Settings → Whitelist. Add source IP from Advertiser Postback Report.
Verification Token: If enabled, ensure &security_token= is in postback URL (Error #21)
Test: Temporarily disable whitelist enforcement to confirm this is the issue
✅ 500 Error: Server Issue
Check Status Page: Visit status.everflow.io to see if there's a platform issue
Retry Logic: Everflow automatically retries failed postbacks up to 25 times
If Persistent: Contact support with Transaction ID and timestamp from Advertiser Postback Report
Note: After 25 consecutive failures, postback is auto-disabled. Must be manually re-enabled.
✅ JavaScript SDK Troubleshooting
Check ClickScript: View landing page source. Is EF.click() or SDK script present?
Check Cookie: DevTools → Application → Cookies → Look for _ef_transaction_id. If missing, ClickScript didn't fire.
Check Console: Browser Console → Look for Everflow errors or blocked requests
Test Incognito: Rule out browser extensions blocking tracking
Verify Conversion Pixel: Check thank-you page has EF.conversion() call with correct parameters
✅ Server-to-Server Troubleshooting
Check Advertiser Postback Report: Is the postback firing at all? Check Reporting → Advertiser Postback
If No Postback: Advertiser's system isn't firing. Check their integration, confirm conversion event triggers postback.
If Postback Exists: Check HTTP response code (200/204 = good, 400/403/500 = error). See Debug Info path above.
Verify Transaction ID: Check if advertiser captured and passed transaction_id correctly from landing page URL
Test Manually: Copy postback URL from report, replace with test values, fire in browser to test
✅ Email Attribution Troubleshooting
Check Email Capture: Email must be captured during click/lead event FIRST. Check Click/Lead Report for email.
Email Exact Match: Email in conversion must EXACTLY match email in click (case-insensitive but spacing matters)
Duplicate Logic: Only 1 Approved conversion allowed per email per event (unless "Allow Duplicates" enabled)
Check Conversion Report: Filter by email to see if conversion exists but was rejected (Error #8 Duplicate)
Attribution Priority: If Transaction ID exists, it takes priority over email attribution

Diagnostic Info Generator

Opening a support ticket? Use this tool to generate formatted diagnostic information with all the details support needs to help you faster.

📋 Diagnostic Info Generator
Create a formatted support ticket with all the details support needs
Find in Conversion Report → Error Code column
Find in Conversion Report → Error Message column
The unique ID for this conversion attempt
💡 Auto-detected: Timestamp, browser, and URL will be included automatically
✓ Diagnostic Info Ready - Paste Into Support Ticket
✅ Pre-Support Checklist
Try these quick fixes before opening a support ticket:
Run Click Report filtered by Transaction ID to verify click exists and isn't "Invalid"
Check Advertiser Postback Report to see what URL was actually received and response code
Verify offer is Active (Offers → Manage → Status column) and not expired or over cap
Test in Incognito mode to rule out browser extensions, AdBlockers, or cached cookies
Check IP/Domain Whitelist if using (Advertisers → Settings → Whitelist)
Review the Error Lookup above for your specific error code's common causes and fixes

Complete Error Code Reference Table

For quick reference, here's the complete list of all 27 conversion error codes

Error Code Error Message What It Means 1 Throttled Conversion Throttle rate invalid (must be 0-100%) 2 Advertiser Whitelist Domain Conversion blocked - domain not whitelisted 3 Advertiser Whitelist IP Conversion blocked - IP not whitelisted 4 Over Caps Caps exceeded (conversion in Pending status) 5 Above Lookback Window Value Conversion occurred too long after click 6 Non-HTTPS Traffic Using HTTP but offer requires HTTPS 7 Invalid Protocol Cannot detect whether pixel using HTTP or HTTPS 8 Duplicate Conversion Conversion already recorded for this transaction 9 Manually Rejected Network admin manually rejected this conversion 10 Domains Not Matching Click domain ≠ conversion domain 11 Invalid Network Network ID (NID) is invalid or missing 12 Invalid Transaction ID Transaction ID missing, empty, or malformed 13 Invalid Click Associated click not found (most common error) 14 Click and Conversion Offer Not Matching Click on Offer A, conversion fired to Offer B 15 Invalid Offer Offer ID does not exist 16 Invalid Tracking Domain Tracking domain not configured or DNS issue 17 Invalid Conversion Domain Conversion domain not configured or DNS issue 18 Inactive Offer Offer status set to Inactive or Private 19 Expired Offer Offer's end date has passed 20 Below Lookback Window Conversion occurred too quickly (possible bot) 21 Invalid Verification Token Security token missing or incorrect 22 Fraudulous Conversion Advertiser flagged as fraudulent (e.g., AppsFlyer fraud_flag) 23 Invalid IDFA Match iOS device ID on click ≠ conversion 24 Invalid Google ADID Match Android device ID on click ≠ conversion 25 Unmatching Offer Event ID Event ID does not belong to this offer 26 Postback Control Blocked by Postback Control rule 27 Pass Through Pass Through / Fail Traffic redirect active

Hidden Causes & "Gotchas"

Some errors have causes that aren't obvious from the error message alone. Here are the most important hidden causes to know:<

🕒 The 90-Day Data Purge

Hidden Cause: Error #13 (Invalid Click) can mean the click is >90 days old. While analytics are kept forever, raw click data is purged after 3 months to manage database size.

What This Means: If an advertiser fires a postback for a click older than 90 days, Everflow no longer has the raw record to match it against.

Fix: This is expected behavior, not a bug. Conversions must fire within 90 days of click for attribution.

🔒 Silent Advertiser Whitelist

Hidden Cause: If "Enforce Advertiser Whitelist" is enabled, any conversion from an unlisted IP/domain is blocked silently without notifying the advertiser.

What This Means: The advertiser thinks they fired the postback successfully (they see 200 OK response), but Everflow rejected it before it reached the system.

Fix: Check Advertisers → Settings → Whitelist. Add advertiser's server IP or domain. Check Advertiser Postback Report to see actual source IP.

📧 Email Attribution Duplicate Logic

Hidden Cause: Error #8 (Duplicate Conversion) can mean "same email used twice" if Email Attribution is enabled.

What This Means: The system is configured to only allow one "Approved" conversion per email address for a specific event.

Fix: If legitimate (e.g., same customer making multiple purchases), enable "Allow Duplicate Conversions" in Offers → Revenue & Payout Tab.

🔄 The 25-Failure Auto-Disable

Hidden Cause: After 25 consecutive postback failures, Everflow automatically disables the postback entirely.

What This Means: If your partner postback URL is misconfigured or their server is down, after 25 failed attempts, Everflow stops trying completely.

Fix: Fix the underlying issue (wrong URL, partner's server down, etc.), then manually re-enable the postback in Partners → Postbacks.

🍪 Direct Linking "Invisible" Transaction ID

Hidden Cause: In direct linking (Meta, Google Ads), users expect to SEE the Transaction ID in the URL. When it's not there, they think tracking is broken.

What This Means: With direct linking, the TID is generated by ClickScript and stored in a first-party cookie (_ef_transaction_id), NOT passed as a URL parameter.

Fix: Check DevTools → Application → Cookies → Look for _ef_transaction_id. If present, tracking IS working (you just can't see it in the URL).

Where to Find Error Codes

Error codes appear in multiple locations depending on how you're tracking conversions:

1 Conversion Report (Most Common) Navigate to Reporting → Conversion

Add columns: Error, Error Code, and Error Message

Rejected conversions show a red X in the Error column with the specific code and message.
2 Advertiser Postback Report (For S2S Debugging) Navigate to Reporting → Advertiser Postback

Shows:
• Raw postback URL received
• HTTP response codes (200, 204, 400, 403, 500)
• Error details if postback was rejected

This is essential for diagnosing "postback fired but no conversion appeared" scenarios.
3 Conversion Import Errors (For CSV Uploads) Navigate to Reporting → Conversion Imports

Click the Conversion Errors column to see which rows failed and why.

Common CSV import errors include "Reached Cap" (conversion in Pending status, not rejected) and formatting errors.

Related Resources

📚 Complete Tracking Documentation Master conversion tracking with these essential guides Setup & Configuration:
Understanding S2S Postbacks
How To Test Partner Postbacks
Accessing & Editing Postback URLs
Platform-Specific Postback Configurations

Attribution & Methods:
Conversion Attribution Priority
Choosing a Conversion Method
Clickless Conversion Tracking

Troubleshooting:
Click Error Code Reference
Everflow Server IPs (for firewall whitelisting)
IP/Domain Whitelisting Guide