Ten scrapers you don't have to write.

We run the collection pipeline — ten sources, nightly, geocoded, deduplicated, expired on schedule — and serve the result as one API. Everywhere to play and everything happening, without a scraper of your own to maintain.

28,854
Courts & venues
124,524
Individual courts
19,060
Clubs with member counts
1,521
Upcoming tournaments

Queried live from the production database on every page load — not a snapshot that goes stale.


What you are actually buying

The records are the visible part. The part that costs you money is keeping them true: source sites redesign without warning, republish the same event under a new URL, and never tell you when a listing dies. That is the work this removes.

Build it yourself
  • ✗ Reverse-engineer ten sources, two behind logins and one behind a CAPTCHA
  • ✗ Geocode every address and cache it, or pay per lookup forever
  • ✗ Detect the same tournament republished under a new URL
  • ✗ Expire finished and cancelled events so you stop showing them
  • ✗ Repair scrapers each time a source site is redesigned
  • ✗ Run and monitor all of it, nightly, indefinitely
Plug into ours
  • ✓ One authenticated endpoint, one integration
  • ✓ Coordinates already resolved on every record
  • ✓ Content-matched deduplication, with human review of edge cases
  • ✓ Finished listings leave the live set automatically
  • ✓ Source breakage is our problem, repaired inside 5 business days
  • ✓ Nightly, whether or not you think about it

Eight datasets in three families

DatasetFields beyond name & location
Places to play
Courts & venues Indoor/outdoor court counts, lights/surface/amenity flags, access type, venue photo, contact email & phone
Clubs Member count, club email, contact name, directors and organizers as structured JSON
What is happening
Tournaments Start/end dates, registration window, live registration status, entry cost, organizer URL, event logo, status, currency, field size, source
Leagues Season start & end, cost, listing URL, days since posted
Events Date, registration window, cost, listing URL
People
Instructors static Profile URL, contact email & phone where published, bio text — a one-time professional registry import, not part of the nightly scrape
Ambassadors static USA Pickleball ambassador directory, one contact link per territory — a snapshot, not a nightly refresh (the source platform migrated in August 2026 and the automated refresh is being rebuilt)
Tournament directors & club managers rider required Email-deduplicated contacts for the people who run the events and clubs your product surfaces. US records only, included in the People plan under a signed acceptable-use rider (permission-based outreach only, no resale or list transfer)

National in the US, real depth abroad

All 50 states plus DC. Venue coverage reaches every US state and the District of Columbia. The court network — every venue geocoded, linked back to its source listing — is the largest single asset in the data.

45 countries with live tournaments. Beyond the US: Canada, Australia, the UK, Spain, Portugal and New Zealand carry the most events. Every record states where it came from — PickleballTournaments, PPA Tour, APP Tour, UTR Sports, Swish, PickleballDen, USA Pickleball, Pickleheads, Places2Play and DUPR, plus direct submissions from users on the site — so you can filter by provenance.

How it stays current

01
Nightly scrape

All ten sources run at midnight daily, each with automatic retry and resume. A steady night processes 26,000+ source records without a miss.

02
Geocode

Addresses resolve through Google Maps against a large persistent cache, so coordinates stay consistent across runs rather than drifting.

03
Deduplicate

Source sites re-publish events under new URLs. Matching on date, city and name catches those; suspected duplicates are held for human review, never silently merged.

04
Expire

Finished and cancelled listings leave the live set automatically the day after they end, so you are never serving a stale event.

05
Community-added

Tournament organizers, league operators, venues and instructors can add themselves directly through the site. Every submission is reviewed by a human before it goes live.

This is a production pipeline, not an export. The same database drives the public PickleballMaps site and has delivered hundreds of thousands of location-matched notifications to thousands of subscribers. You are licensing a feed that is already load-bearing.

A read-only JSON API over HTTPS

Bearer-token authentication, cursor pagination, and an updated_since parameter on every collection so you can sync incrementally instead of re-pulling the world.

GET /v1/tournamentsFilter by bounding box, radius from a point, date range, cost, source
GET /v1/tournaments/{id}Single listing with full detail
GET /v1/leaguesSame filters, season-based dates
GET /v1/eventsSame filters, single-day events
GET /v1/courtsFilter by bounding box, radius, state, indoor/outdoor, minimum court count, access type
GET /v1/courts/{id}Single venue with court configuration and contact fields
GET /v1/clubsClubs with member counts and organizer structure
GET /v1/instructorsCoaches and pros by location
# Everything within 50 miles of Austin opening for registration soon
curl -H "Authorization: Bearer $PBM_KEY" \
  "https://www.pickleballtournamentsmap.com/api/v1/tournaments?lat=30.27&lng=-97.74&radius=50"

{
  "id": 24817,
  "name": "Texas Open Pickleball Championships",
  "start_date": "2026-10-09",
  "registration_status": "Registration opens on 08-31-2026",
  "cost": 65.0,
  "formatted_address": "3918 Manchaca Rd, Austin, TX 78704, USA",
  "lat": 30.2371, "lng": -97.7823,
  "distance_miles": 3.4,
  "source": "PickleballTournaments",
  "url": "https://www.pickleballtournaments.com/...",
  "first_seen": "2026-08-01"
}

What counts, what it costs, what happens when it breaks

An API callOne HTTP request, whatever it returns. Pagination is the exception — each page is its own call, so pull a larger page size per request if volume matters to you.
Going overNothing is cut off. You keep serving, we invoice the overage at $6 per additional 1,000 calls. No silent throttling, no surprise suspension.
Rate limit10 requests per second sustained, 50 in a burst. Above that you get HTTP 429 with a Retry-After header rather than a dropped connection.
CachingExpected, not merely tolerated — mirror it in your database and serve your users from your own copy. Refresh at least every 7 days.
Record identityInteger ids are stable for the life of a record and never reused, so historical rows stay joinable even after a listing leaves the live set.
If you cancelThree paid months in, a final full export in CSV or Parquet, yours to keep, at no charge. Cancel earlier and you keep what you already cached under the normal refresh policy.
When a source breaksEvery run is monitored and each source reports its own record count, so a silent failure is caught the same night rather than weeks later. Repaired inside 5 business days.
Reporting bad dataEmail the record id. Corrections that are ours to make — geocoding, deduplication, expiry — are fixed within 2 business days.

Terms, in plain language

LicenseNon-exclusive, annual or monthly, terminable at 30 days. You license use of the data; PickleballMaps retains ownership of the compilation.
AttributionOne credit per surface, not per record: "Data by PickleballMaps" with a link, somewhere on any screen built on the data. Waived entirely on the Partner plan.
RedistributionCourts, Competitions, People and Full map cover use inside your own product, including showing records to your users. You need Partner if your customers can reach the underlying records directly.
AvailabilityTarget 99.5% monthly uptime, measured on the API rather than the scrapers. Freshness is guaranteed to one nightly cycle. Partner plans carry a written SLA with service credits.
People & Full map contactsTournament director and club manager email/phone fields are outreach contact info, not marketing data — both plans require a signed acceptable-use rider (permission-based outreach only, no resale or list transfer, opt-outs honored within 5 business days).

Annual commitment takes 15% off any plan. A one-off historical extract of the full archive, delivered as CSV or Parquet without an ongoing subscription, is $1,500.

Plans

Three co-equal plans — places to play, what's happening, and the people behind it — sold separately, because most products only need one. Take all three together and the combined Full map plan costs less than buying them separately.

Courts

$299 / month
25,000 calls/mo

Competitions

$299 / month
25,000 calls/mo

People

$399 / month
10,000 calls/mo

Full map

$599 / month
75,000 calls/mo

Test it before you decide

A 5-day key against the live production feed — free, and with no call to sit through first. Capped at 500 records per dataset, enough to check the shape and the fill rates against the real thing. Sign and the same key unlocks to full volume — no new key, no re-integration.


Getting started

Step 1
Tell us the shape

Which datasets, which geography, and how you plan to use it. Reply to any confirmation email — fifteen minutes is usually enough.

Step 2
Evaluate on real data

A 5-day evaluation key against the live feed, capped at 500 records per dataset, at no cost — so you test against production rather than a sample file.

Step 3
Sign and switch on

Subscribe above and the same key unlocks to full volume. No cutover, no new integration.

Pickleball Maps, LLC — questions on any of this go to whoever replies to your confirmation email. The Partner / unmetered plan is a custom deal, not self-serve — reach out directly to talk through it.