Building a Tax Auction Calendar for Tax Deed Club
The Problem
Tax deed auctions happen in every county in the US. But there's no central place to find the dates. Some counties post them on a clerk's website. Some states publish schedules through agency portals. Others run sales through third-party platforms like RealAuction, Bid4Assets, or Linebarger. Every source has a different format, a different URL, a different update schedule.
For investors at Tax Deed Club, this meant opening dozens of browser tabs every week, manually checking each one for new postings. Miss one update, miss the auction. Their members were spending hours on data entry that could be automated.
They needed one place with all the dates, updated automatically.
The Solution
We built a pipeline that collects auction dates from all of these sources, merges them into a single database, and delivers everything through a calendar and iCal feed their members can subscribe to.
The pipeline runs every week on GitHub Actions. Each run spins up collectors for seven different vendor platforms and four state agencies, pulls the latest auction data, and syncs it all to a Supabase database. The calendar and iCal feed pull directly from that database, so members always see current data.
Where the data comes from
The biggest source of auction data is vendor platforms. Counties across the country contract with companies like RealAuction, Bid4Assets, Linebarger, and SRI to run their online sales. These platforms list exact dates, times, deposit requirements, and property counts. We built collectors for seven of these vendors, including Grant Street Group, CivicSource, and DTax, covering the majority of online tax deed and tax lien sales.
State agency sites fill in the gaps. States like California, Arkansas, Colorado, and Iowa publish official sale schedules through centralized portals. When a state agency posts a date, it's an official source.
Some of these sites are straightforward HTML. Others are behind Akamai protection, serve data through REST APIs, or render everything with JavaScript. Each collector handles its source differently: some use direct HTTP requests, some use headless browsers, and for the really unstructured pages, we use AI to extract auction details from free-form text.
Handling overlaps
Multiple sources often report the same auction. RealAuction might list a Florida county sale that a state agency also publishes. Each source gets a confidence score based on how close it is to the actual auction: official auctioneers like Linebarger and SRI score highest, state agencies score next, and general vendor platforms like RealAuction and Bid4Assets fill in below that.
When two sources match on the same state, county, date, and sale type, the higher-confidence record wins and the other is discarded. No manual review needed.
What Members Get
The calendar shows every upcoming auction in one view, color-coded by sale type and filterable by state.

Click any auction to see the details: county, sale type, vendor, dates, and a direct link back to the original source listing so investors can go straight to registration.

Members can also subscribe to the iCal feed directly in Google Calendar, Apple Calendar, or Outlook. Upcoming auctions show up automatically with reminders for registration and deposit deadlines. No manual checking required.

The whole thing updates weekly on autopilot. Auction dates don't change frequently enough to need daily runs, and being respectful with request volume matters when you're collecting from government sites.
The Result
Before this project, Tax Deed Club members were manually tracking auctions across dozens of websites. Now they subscribe to one feed and the dates come to them. No more spreadsheets, no more missed postings.
The system currently covers eight states with active collectors: four through state agency portals and the rest through vendor platforms that handle sales in those states. Each auction record includes the county, state, sale type (deed, lien, or hybrid), property count when available, and a direct link to the original listing so investors can go straight to the source when they're ready to bid.
This project is a good example of what I build for clients: take scattered, messy data, pull it into one place, and deliver it in a format that saves hours of manual work every week. If that sounds like a problem you have, let's talk.