What this is
This page is the complete methodology behind the KC Youth Soccer Price Index, a side-by-side record of published prices at the Kansas City metro's competitive youth soccer clubs. It explains how the data was collected, what the rules were, what we found about how prices get published, and what the Index can and cannot tell you.
The rules
- Published figures only. Every number in the dataset comes from a club's own published page. No estimates, no phone calls, no quotes from third parties, no averages.
- Every cell is sourced and dated. Each row carries the exact URL it came from and the date it was collected.
- A registration wall counts as unpublished. If a price only exists inside a registration flow or a team invitation, the dataset records that fact rather than the number. Unpublished pricing is itself a finding.
- No editorializing in the data layer. The dataset records what pages say. Interpretation lives here and in the findings, clearly separated from the data.
- A gap is a documented status, not a hole. Where a value was not captured by publication, the Index says so openly, with the reason.
Where every number comes from
Collection ran the week of August 3, 2026, using automated page retrieval as the engine and human verification as the gate. That distinction matters, because automated retrieval can serve cached or stale versions of a page. Our rule: the live browser beats the fetch. Before publication, every figure in the published table was re-checked by a human in a live browser at its source URL. Any cell not re-verified by publication morning was cut from the table and listed as pending, openly.
Two additional safeguards:
- Archival snapshots. During final verification, every source URL was saved to the Internet Archive's Wayback Machine, so every citation in this Index points to a permanent dated record, not just a live page that can change or disappear. We adopted this rule after watching a source page get deleted within days of our capture. Where an archive service refused a page, the refusal is logged and dated screenshots serve as the record.
- Observation dates on classifications. Statements like "this club's page is labeled with last season's dates" are true as of a specific day and are recorded that way. Pages change, and several did during collection week. Where a page was updated between our first capture and final verification, the published classification reflects the later, human-verified state.
A second rule was added after publication, on August 26, 2026, when a reader showed that the Index had missed eight published fee tiers at one club because collection followed that club's program pages and never walked its separate competitive navigation: every club gets a full navigation audit, not a fee-page visit. In that case the tiers were listed plainly in the club's own program menu and the Index simply had not opened them, so the miss was ours rather than the club's. The correction is logged on the findings page, the affected rows carry their new collection date, and the navigation audit is now a standing part of the monthly update cycle.
One rule emerged during final verification and is now permanent: the current sheet supersedes the older live page. Twice during the verification pass, a club's current pricing was found to have replaced an older published version while the older page stayed live: one club's published range was superseded by its own linked 2026-27 fee sheet, and one merging club family's legacy pages were superseded by the merged club's new 2026-27 tables. In both cases the Index publishes the current, human-verified sheet, documents the older page with dates, and logs the supersession openly. Web pages stay up long after they stop being the answer, and an index that quoted them anyway would be repeating the industry's problem instead of measuring it.
Why we do not use secondary sources or AI summaries
Two categories of source never enter this dataset, and collection week demonstrated why.
Secondary reporting. A local outlet's 2025 guide listed one metro club at a few hundred dollars per year, all inclusive. The club's own current page lists club fees three to four times higher, before required uniforms and team fees. Whether the guide was stale, describing a different program tier, or simply wrong, the gap is large enough to mislead any family relying on it. Secondary sources were used only as cross-checks and leads, never as data.
AI summaries. No figure in this dataset comes from an AI tool's summary of a page, and the reasons are structural. A summary is a paraphrase, and a paraphrase can flip a detail like included to excluded without anyone noticing. A crawler serves whichever version of a website it last saw, and this metro currently offers a live demonstration of why that matters: one merging club family has three cost pages online at once, two carrying last season's prices and one carrying this season's, all archived by this Index with dates, so any tool's answer about that club depends entirely on which page its crawler found. And name collisions are real: several of this metro's clubs share their names with organizations in other states and countries, and one local club cannot be surfaced by ordinary search at all. Every cell in this Index instead traces to a club-published URL that a human read in a live browser, on a recorded date.
The transparency patterns
Publishing this data required classifying how clubs deliver it, and the delivery styles turned out to be findings in their own right. Two axes matter. Content transparency is whether the published price is complete and honest about what it covers. Delivery transparency is whether a family can actually find and read it. A club can score well on one and poorly on the other.
Patterns observed in the data, each present at one or more clubs:
- Unpublished. No price is findable on the club's public pages. This has three distinct faces: prices held behind a registration wall or team invitation, a site rebuild with placeholder text where fees should be, and a legacy volunteer model where no club-set player price exists at all because teams collect per-team league fees the old way. The Index distinguishes these, because a half-built website and a volunteer club from another era are not the same thing as a wall.
- Unbounded second layer. A precise published base fee, plus a team fee layer described as estimated, changeable in season, and communicated by the team manager, covering items like travel tournaments and coach expenses. The base is transparent. The total is unknowable from public information.
- Image-only publication. Complete fee schedules published as image files. The numbers are public but invisible to search engines, screen readers, and any text-based comparison. Notably, some of the metro's most complete all-in publishers deliver by image.
- Undiscoverable. Prices or clubs that exist but cannot be surfaced by ordinary search, including a four-way name collision that buries one local club behind identically named organizations elsewhere.
- Stale. Pages still carrying last season's labels or figures as the new season begins, whether by oversight or otherwise. Several clubs showed August staleness during collection. Where a club updated its pages before our verification pass, the current state is what published. Verification also traced most of the metro's August staleness to a single cause: a club-family merger whose web presence is mid-transition, with legacy pages still live beside the merged club's current site. That case is reported in the findings as its own observation rather than counted as ordinary staleness.
- Componentized. The full price exists but only as arithmetic: a registration fee plus a monthly fee plus per-team splits, each published, never totaled. Complete content, assembly required.
- Partial publication. Entry-level and supplemental prices published to the dollar, while the flagship competitive program's fee is not findable through the club's public pages.
Sub-patterns worth naming: adjustable-anytime pricing, where a club publishes its right to change fees at any point in the year, in one case with a stated consumer price index rationale, and unbundling, where a required item moves out of the headline price so the sticker drops while the real cost rises.
The Index also records the positive versions, because they prove transparency is achievable at every price point: complete all-in tables with line-item inclusion lists, a club that internalizes coach travel into its published price, a club whose published price includes its team fees and coaches fees outright, a club that unbundled its uniform and published the reasoning and the math for the decision on the page, and a club that publishes an explicit exclusions list with every price, naming what is not covered, including its team-level and travel layers, so a family knows exactly where the published number ends.
Reading the numbers fairly
- Compare within age bands. At most clubs measured, high school age bands price below U13 to U14, because clubs run fewer sessions during the high school season, though national-platform teams at some clubs invert this. A club-to-club comparison that ignores this misleads. The Index normalizes by age band and flags high school rows separately.
- Uniforms are required everywhere and almost never included. Across the dataset, a required uniform package appears inside the published price at one current offering. Where a uniform price is published, the Index records it. Where a required package has no published price, that is recorded too.
- Payment plans can change the price. At least one club publishes higher totals for installment plans than for paying in full, plainly, which is effectively an honest financing charge. Plan-dependent pricing is noted where published.
- Measured differences are reported, not explained away and not inflated. Where the data shows girls' programs pricing above boys' equivalents at the same club, the Index reports the measurement alongside the league-structure context that plausibly drives it, and goes no further.
Corrections
Before publication, every club with rows in the Index was sent its own rows, with sources, through the club's published contact channel, and invited to correct them. One club publishes no contact channel on its public site; the invitation applies to that club as fully as to every other. That invitation stands permanently: any club that believes its listing is wrong or out of date can write to jon@americanpyramid.org, and verified corrections will be made and logged openly with a note. Nothing gets corrected silently. During collection and verification, one classification was upgraded when better evidence replaced an outdated source, one compressed value was split when the club's own document showed two tiers, and two clubs' superseded price sets were replaced by their current published sheets, with every trail preserved rather than erased, because a price index that hides its own corrections has no business asking clubs for transparency.
Straight talk: what this Index cannot tell you
- The published price is not always the paid price. Team fee layers, scholarships, sibling discounts, and payment plans mean real families pay real amounts this Index cannot see. What the Index measures is what a family can learn before committing, which is exactly the number that decides whether they walk in the door.
- This is a focused roster, not a census. The metro has far more soccer organizations than this Index covers. The roster prioritizes the largest competitive clubs across the four coverage areas.
- This is a snapshot with dates on it. Every published figure was re-verified at its source between August 14 and 16, 2026, in the three days before publication. Clubs change their pages, and this page tells you exactly when we looked.