How to Validate Your Entire Supply Chain
A complete supply chain validation checks ads.txt, sellers.json, and schain across every SSP and demand path. Here is the step-by-step process for verifying everything end to end.

Key Takeaways
- Full supply chain validation checks three layers: authorization (ads.txt), identity (sellers.json), and path (schain). Checking only one layer leaves gaps.
- Cross-layer consistency is as important as individual layer accuracy. Each layer references the others. Inconsistencies between layers are as damaging as missing data.
- The process scales with complexity. A publisher with five SSPs can validate manually. A publisher with twenty SSPs needs automation.
- Validation should be repeated quarterly and after any SSP changes. Supply chain data isn't static. SSPs update sellers.json, migrate platforms, and change configurations.
- The payoff is measurable. Publishers who validate and fix their full supply chain consistently see higher CPMs within weeks.
---
How to Validate Your Entire Supply Chain
Checking your ads.txt file is step one. But a clean ads.txt doesn't guarantee a clean supply chain.
The full validation covers three layers and the connections between them. Here's how to do it.
Prerequisites
Before starting:
- Access to your ads.txt file
- List of all active SSP partnerships with account IDs
- SSP dashboard access for performance data
- BeamFlow's scanner for automated cross-verification (recommended)
Step 1: Validate Authorization (ads.txt)
1.1 File Accessibility
Confirm https://your-domain.com/ads.txt returns HTTP 200 with content-type text/plain. Test from multiple locations if possible, since CDN configurations can cause regional accessibility issues.
1.2 Format Validation
Every data line must follow: exchange-domain.com, account-id, DIRECT/RESELLER, tag-id
Check for formatting errors, missing fields, invalid relationship types, and encoding issues.
1.3 Completeness
Every active SSP integration must have a corresponding ads.txt entry. Every reseller that carries your inventory through secondary channels should have a RESELLER entry.
1.4 Accuracy
Each entry must have the correct account ID and relationship type. A common error is listing a reseller relationship as DIRECT or vice versa.
1.5 Freshness
Remove entries for inactive partnerships. Verify that recently onboarded SSPs are included. Check that any SSP that changed account formats during a migration has the updated ID.
Step 2: Validate Identity (sellers.json)
2.1 Entry Existence
For every SSP in your ads.txt, check https://ssp-domain.com/[sellers.json](/library/how-to-validate-sellersjson-correctly) for your account ID. Flag any SSP where your entry is missing.
2.2 Data Accuracy
For every entry found, verify:
- Name matches your business entity
- Domain matches your publisher domain
- Seller_type aligns with your ads.txt (DIRECT = PUBLISHER, RESELLER = INTERMEDIARY)
- is_confidential is false
2.3 SSP Coverage
Check whether each SSP in your ads.txt actually maintains a sellers.json file. SSPs without sellers.json can't provide identity verification for any of their sellers.
2.4 Cross-Layer Consistency
The account ID in your ads.txt must exactly match the seller_id in sellers.json. The domain in sellers.json should match your actual publisher domain. The relationship types must align across both files.
Step 3: Validate Supply Paths
3.1 Map Direct Paths
For each DIRECT SSP partner, document the typical path from your ad server to DSPs:
- Does the SSP connect directly to major DSPs?
- How many hops does a typical bid request take?
3.2 Map Reseller Paths
For each RESELLER entry, trace the path:
- Which direct SSP resells through this entity?
- How does the reseller connect to DSPs?
- How many total hops from publisher to DSP?
3.3 Verify schain Support
For each SSP:
- Does the SSP add schain nodes to bid requests?
- Do intermediaries in the path add their own nodes?
- Are the chains typically complete (complete=1)?
This information may need to come from SSP documentation or direct inquiry, as publishers typically can't observe schain data directly.
3.4 Identify Redundant Paths
If the same DSP can access your inventory through multiple SSPs, you have parallel paths. This is normal in header bidding. But check whether any paths are way longer or less transparent than others.
Step 4: Cross-Validation Checks
These checks verify consistency across all three layers:
4.1 Authorization-Identity Match
For every ads.txt entry, there should be a matching sellers.json entry with consistent data. Flag any entry that exists in ads.txt but fails in sellers.json.
4.2 Identity-Path Match
Each entity in your supply path should have identity verification available. Every SSP and exchange in the path should maintain sellers.json with entries for the sellers on their platform.
4.3 Path-Authorization Match
Every entity in the supply path that sells your inventory should be authorized in your ads.txt. If your inventory passes through Exchange-B as a reseller, Exchange-B should appear in your ads.txt.
4.4 Performance-Verification Correlation
Compare CPMs by SSP against verification status. SSPs with clean verification should show higher CPMs. SSPs with issues should show lower CPMs. If the correlation doesn't hold, investigate further.
Building Your Validation Report
Compile your findings into a structured report:
Summary:
- Total SSPs validated: X
- Fully verified: X
- Partially verified: X
- Failed verification: X
Critical Issues (fix immediately):
- Missing ads.txt entries
- Missing sellers.json entries for high-revenue SSPs
High-Priority Issues (fix this week):
- Seller type mismatches
- Confidential entries on important SSPs
- Domain mismatches
Medium-Priority Issues (fix this month):
- Long supply paths that could be shortened
- Stale ads.txt entries to remove
- SSPs without schain support
Low-Priority Issues (track for next quarter):
- Minor formatting inconsistencies
- Low-revenue resellers to evaluate
Ongoing Validation Schedule
Weekly: Automated monitoring checks (set up once, runs continuously)
Monthly: Quick manual review of any alerts or changes. Check that new SSP partnerships are fully validated.
Quarterly: Full validation audit following this complete process. Compare results to the previous quarter.
After SSP events: Any time an SSP announces a migration, merger, rebrand, or platform change, re-validate your entries on that SSP immediately.
Frequently Asked Questions
Can I automate the entire validation process?
Most of it. BeamFlow's scanner automates the ads.txt-to-sellers.json cross-verification, which is the most labor-intensive part. Supply path analysis and performance correlation still benefit from human judgment, but the data gathering can be automated.
What if an SSP refuses to fix a sellers.json issue?
Escalate through your account manager. If the SSP is unresponsive, evaluate whether the revenue from that SSP justifies the verification gap. An SSP with ongoing verification issues costs you CPMs on every impression through their platform.
How long does a full validation take?
Manual validation for 10 SSPs takes 2-4 hours. With automated tools, the same validation takes 15-30 minutes. The time investment is small relative to the revenue recovery potential.
Related Articles

ads.txt Checklist Before Going Live With a New SSP
Adding a new SSP? Use this checklist to get ads.txt right from day one. Most verification issues happen during onboarding because publishers skip steps they do not know about.

How to Track ads.txt Issues Across Multiple Domains
Managing ads.txt for one domain is straightforward. Managing it across five, ten, or fifty domains is where things break. Here is how to keep every domain verified.

How to Monitor ads.txt Changes Over Time
SSPs change sellers.json without telling you. Your own team edits ads.txt without documenting it. Monitoring changes over time catches issues before they cost revenue.
Ready to optimize your ads.txt?
Check your domain's supply chain health instantly, free.
Check Your Domain Free