COMING SOON:

Finding a sports program for your child is easy.
Finding the right one isn't.

Compare youth sports programs using detailed, parent-focused information based on your family's priorities - from coaching philosophy and competitive level to playing time, schedule, travel, cost, and more.

The directory is currently being built with clubs across Southern California.


Q&A FOR CLUBS

Most directories help families find clubs and they only provide high-level, generic information. They don't help families compare individual programs - even though that's what families are actually choosing.

Recreational, competitive, academy, and elite programs within the same club can have completely different schedules, coaching philosophies, travel expectations, costs, and goals. Existing directories rarely capture that information.

By working directly with clubs, we're building a directory that's more detailed, more transparent, and easier for families to use. It allows families to compare detailed information about each individual program and choose the one that best matches their priorities - which in turn helps clubs get discovered by more families and improves the quality of those connections.

1. By offering clear and transparent information about your programs, more families - and especially more of the right families - will discover your club who otherwise would not have found you. Many families end up not contacting clubs if information isn't publicly available.

2. Every club receives its own dedicated page that can be linked from your website, shared with prospective families, and updated whenever your programs change - no login or cost required for anyone (not for clubs nor families).

3. Families know that your information is current.

In short, our goal is to help your club grow beyond strictly word of mouth and referrals.

We're currently building out the directory, starting with soccer clubs in Southern California, eventually expanding to more sports and then to additional territories. If you are part of a soccer club in SoCal that hasn't been contacted by us yet, please reach out to [email protected].

There is currently no cost associated with being added to the directory. Any club that gets added at this stage with complete information will also be "grandfathered" into any future cost structures - meaning that clubs that join now will never be charged later to remain listed.

The directory will always be free for families, with no login required.

Once the initial information has been submitted, we periodically contact clubs to verify the information. Clubs can also contact us directly at [email protected] to update their information year-round.

Clubs that complete their profile before launch receive the greatest visibility from day one. If we don't receive program information, we may still include a basic listing, but families won't be able to discover your individual programs through directory filters and comparisons.


[email protected]

(function () { const webAppUrl = "https://script.google.com/macros/s/AKfycbxCWd13Mvdq5SRBMp7_1qm9JENYj2zPszr0z_bInRjTZLFCDKihY8mdDeDtDQtkj3cm/exec"; const clubNameParams = new URLSearchParams(window.location.search); const clubNameCode = clubNameParams.get("club"); const clubNameElement = document.getElementById("club-name"); if (!clubNameCode) { return; } fetch( webAppUrl + "?club=" + encodeURIComponent(clubNameCode) ) .then(function(response) { return response.json(); }) .then(function(data) { if ( data.success && data.clubName ) { clubNameElement.textContent = data.clubName; } }); })();

Submit your program information.

For the best experience, we recommend completing this on a computer.It typically takes about 10–20 minutes.

From your computer, go to:
blips.co/#clubs
And enter your club code:
Club Code
Prefer to continue on this device?
You can open the form directly, but it may be easier to complete on a computer.
(function () { const webAppUrl = "https://script.google.com/macros/s/AKfycbxCWd13Mvdq5SRBMp7_1qm9JENYj2zPszr0z_bInRjTZLFCDKihY8mdDeDtDQtkj3cm/exec"; const codeParams = new URLSearchParams(window.location.search); const codeValue = codeParams.get('club'); const codeDisplay = document.getElementById('club-code-display'); const button = document.getElementById('open-questionnaire'); const errorEl = document.getElementById('questionnaire-error'); if (codeValue) { codeDisplay.textContent = codeValue; fetch( webAppUrl + "?club=" + encodeURIComponent(codeValue) ) .then(response => response.json()) .then(data => { if ( data.success && data.googleSheetUrl ) { button.disabled = false; button.style.opacity = "1"; button.addEventListener( "click", function () { window.open( data.googleSheetUrl, "_blank" ); } ); } else { errorEl.style.display = "block"; } }) .catch(() => { errorEl.style.display = "block"; }); } })();

Enter your code to open your club’s form:

(function () { const clubsWebAppUrl = "https://script.google.com/macros/s/AKfycbxCWd13Mvdq5SRBMp7_1qm9JENYj2zPszr0z_bInRjTZLFCDKihY8mdDeDtDQtkj3cm/exec"; const submitButton = document.getElementById("club-submit"); const codeInput = document.getElementById("club-code"); const errorMessage = document.getElementById("club-error"); const loadingMessage = document.getElementById("club-loading"); async function submitClubCode() { const code = codeInput.value.trim(); errorMessage.style.display = "none"; loadingMessage.style.display = "none"; if (!code) { errorMessage.textContent = "Please enter your club code."; errorMessage.style.display = "block"; return; } loadingMessage.style.display = "block"; try { const response = await fetch( clubsWebAppUrl + "?club=" + encodeURIComponent(code) ); const data = await response.json(); if ( data.success && data.googleSheetUrl ) { window.location.assign( data.googleSheetUrl ); } else { loadingMessage.style.display = "none"; errorMessage.textContent = "We couldn't find that club code."; errorMessage.style.display = "block"; } } catch (error) { loadingMessage.style.display = "none"; errorMessage.textContent = "Something went wrong. Please try again."; errorMessage.style.display = "block"; } } submitButton.addEventListener( "click", submitClubCode ); codeInput.addEventListener( "keydown", function (event) { if (event.key === "Enter") { submitClubCode(); } } ); })();