The Problem We Discovered
When building DVC Market, we started with what seemed like great news: 954 Disney Vacation Club listings from various brokers across the industry. More inventory means more choices for buyers, right?
Not quite.
After implementing quality filters, that number dropped to 761 listings. We "lost" 193 listings - about 20% of our total inventory. But here's the truth: we didn't lose anything valuable. We eliminated noise.
What Bad Data Looks Like
1. Already Sold Listings
Brokers don't always remove listings immediately when they sell. We found listings marked as "sold," "pending," "under contract," "contingent," and "reserved."
The problem: Customers waste time inquiring about contracts that are no longer available. This creates frustration and erodes trust.
2. Not Actually For Sale
- Rental listings (people renting out their points, not selling contracts)
- "Wanted" ads (buyers looking to purchase, not sellers)
- Listings in ROFR limbo (waiting for Disney's decision)
- Placeholder or test data
The problem: These listings pollute search results with irrelevant information. A customer searching for a contract to buy doesn't want to see rental opportunities or someone else's buying request.
3. Unrealistic Pricing
Some listings had prices per point of $5, $500, or even $1000+. Others showed 5 points or 5,000 points on a contract.
The problem: These are either data entry errors, outliers, or fraudulent listings. They distort market perception and waste everyone's time.
4. Missing Critical Information
Contracts without use years, invalid resort assignments, or incomplete data.
The problem: Customers can't make informed decisions without complete information. Incomplete listings create more questions than they answer.
The Real Business Impact
Customer Trust
Every bad listing a customer clicks on is a small erosion of trust. Click three "sold" listings in a row? They'll assume your site isn't maintained and go elsewhere.
Wasted Time
Both customers and staff spend time on dead-end inquiries. That customer service call about a listing that's been sold for three months? That's lost productivity.
SEO and Analytics
Bad data creates misleading analytics. Are customers not interested in Animal Kingdom contracts, or are all your Animal Kingdom listings already sold? You can't optimize what you can't measure accurately.
Competitive Disadvantage
Professional buyers and sellers can spot data quality issues immediately. They'll take their business to sites they trust.
Our Solution: Quality Gates
We implemented a multi-layer filtering system:
Layer 1: Business Rules
- Price per point: $28-$350 (market realistic range)
- Contract size: 25-2000 points (valid DVC contract sizes)
- Must have use year (essential contract detail)
Layer 2: Status Filtering
Automatically exclude listings containing:
- Status keywords: "sold," "pending," "reserved," "under contract"
- Availability issues: "withdrawn," "expired," "inactive," "unavailable"
- Disney ROFR: "rofr," "waiting," "under review"
Layer 3: Type Filtering
Remove non-sale listings:
- Rentals: "rental," "rent," "renting"
- Wanted ads: "wanted," "looking for," "seeking"
- Test data: "sample," "test," "placeholder"
The Results
Before filtering:
- 954 listings
- Unknown quality
- Mixed availability
- Customer complaints about dead listings
After filtering:
- 761 listings
- All meet quality standards
- All actually available
- Clean, trustworthy marketplace
The 80/20 Principle Applied
We removed 20% of listings but eliminated probably 80% of customer frustration. Those 193 listings were generating disproportionate problems:
- Dead-end inquiries
- Customer service overhead
- Trust issues
- Wasted time
Lessons Learned
1. More ≠ Better
A thousand listings with 20% garbage is worse than 800 clean listings. Quality beats quantity every time.
2. Data Decay is Real
Listings don't stay fresh. They get sold, prices change, availability shifts. You need automated quality checks, not just a one-time cleanup.
3. Filter Early, Filter Often
Don't show bad data to users and try to fix it later. Keep it out of the system entirely.
4. Trust is Fragile
It takes months to build customer trust and seconds to lose it. One bad experience with incorrect data can cost you a customer forever.
5. Your Data Reflects Your Brand
Would you shop at a grocery store with expired products on the shelves? Your website is your digital storefront. Keep it clean.
Implementation Tips
If you're building a marketplace or aggregating data:
Start with Minimum Viable Standards
Don't try to be perfect. Start with obvious filters:
- Remove clearly sold items
- Filter out non-sale content
- Validate required fields exist
Monitor and Iterate
Track which filters catch the most problems. Refine your rules based on real data.
Be Transparent
If you're filtering data, tell users why. "We only show active listings" builds trust, not suspicion.
Automate Everything
Manual data cleaning doesn't scale. Build automated quality gates into your data pipeline.
Cache Wisely
We cache clean data for 5 minutes. This balances freshness with performance while ensuring quality checks run regularly.
The Technical Architecture
Our quality filtering happens at the database level - bad data never leaves the database, which means:
- ✅ No processing overhead for junk listings
- ✅ API responses are lean and fast
- ✅ Cache contains only quality data
- ✅ Analytics are based on real, available inventory
Conclusion: Data Quality as Competitive Advantage
In a world where everyone has access to similar data sources, data quality becomes your differentiator.
The marketplace with accurate listings, up-to-date availability, clean consistent data, and fast relevant search will win over the marketplace with more listings but worse quality.
We "lost" 193 listings but gained:
- Customer trust
- Operational efficiency
- Accurate analytics
- Competitive advantage
- Peace of mind
That's a trade we'd make every single time.
The Bottom Line
Good data isn't just a technical requirement - it's a business strategy. Every bad listing you filter out is a frustration you prevent, a support ticket you avoid, and a customer relationship you preserve.
Invest in data quality. Your customers will thank you, your team will thank you, and your bottom line will thank you.
Built with: Quality-first thinking, Laravel, MySQL
Result: 761 listings, 100% trust