Article

135 Database Tables: What a Production Customer Data Platform Architecture Actually Looks Like

SaaS Displacement

Key Takeaways
  • When people hear "custom software," they often picture a simple application: a few screens, a database with 10 or 15 tables, basic functionality.
  • 135 database tables is not complexity for its own sake.
  • When evaluating custom software, look at the database schema.

The Setup

When people hear "custom software," they often picture a simple application: a few screens, a database with 10 or 15 tables, basic functionality. The kind of thing a freelancer builds in a few weeks. That picture is an MVP — a minimum viable product. It is not a production system.

A production Customer Data Platform — one that ingests leads from 12 sources, resolves identities, enriches profiles, routes leads, tracks affiliate conversions, processes e-commerce transactions, manages subscriptions, and provides analytics — looks fundamentally different. It has architectural depth. It has schema complexity. It has production data at scale.

According to a 2024 Percona Database Survey, the average production application runs on 30 to 50 database tables. Enterprise platforms typically have 100 to 500 tables. Segment's CDP, which powers data infrastructure for companies like IBM and Levi's, processes billions of events across hundreds of database entities.

PRJ-01, the Customer Data Platform built by the Stealth Labz operation, has 135 database tables, 112 data models, and 31 analytics rollup tables. It is not an MVP. It is a production-grade system that has processed 616,543 leads and 75,125 transactions against real operational data.

What the Data Shows

The Architecture by the Numbers

Metric Value
Database tables 135
Data models 112
Controllers (application logic) 104
Service files (business logic) 59
Scheduled jobs 64
DailyStat rollup tables 31
Total lines of code 194,954
Total files 1,266
External integrations 20 (12 inbound, 8 outbound)

Source: portal_stealth_locked_values. Architecture metrics from codebase audit.

For comparison:

Project Lines of Code
SQLite (embedded database used in billions of devices) ~155,800
WordPress (powers 40%+ of websites) ~160,636
PRJ-01 194,954
Quake III Arena ~229,000

Source: portal_stealth_locked_values. Comparison figures from published open-source project metrics.

PRJ-01 is larger by line count than both SQLite and WordPress. This is not a comparison of purpose — it is a comparison of scale. 194,954 lines of code is not a side project. It is a production platform.

Compared to a typical SaaS MVP:

Metric PRJ-01 Typical MVP Multiple
Lines of code 194,954 10,000-30,000 6-20x
Database tables 135 15-30 4.5-9x
External integrations 20 2-4 5-10x

Source: portal_stealth_locked_values. MVP benchmarks from industry averages cited in FullStack 2025 and Keyhole Software 2026 reports.

What the 135 Tables Do

The database schema covers the complete data lifecycle for a lead-driven business. Here is what each layer handles:

Lead Lifecycle (core tables): Lead ingestion from 12 inbound sources. Identity resolution using three-tier matching (UUID, email, phone). Contact point consolidation with verification tracking. Lead scoring (0-100). Eight lifecycle stages from capture through monetization.

Affiliate Tracking (tracking tables): Click tracking with device and geographic detection. 30-day attribution cookies. Conversion processing from Stripe, Shopify, and WooCommerce. Postback firing with retry logic (3 retries, exponential backoff). 4-tier affiliate management system. Offer management with caps and geographic targeting.

E-commerce (transaction tables): Stripe checkout with product positioning (main, bump, upsell, downsell). Subscription management with 6 lifecycle states. Usage-based billing with overage charges. Platform credit system. Volume-based pricing tiers.

Analytics (rollup tables): 31 DailyStat rollup tables aggregated by 6 nightly scheduled jobs. Role-based dashboards for admin, partner, business, and affiliate users. Period comparison with trend indicators. 30+ data dimensions tracked per day.

Revenue Model (billing tables): 9 subscription plans across 4 customer types (affiliate, partner, business, API user). 5 revenue streams (subscriptions, credits, overage, lead purchases, marketplace commissions). Usage metering tracking leads processed versus plan limits. Overage calculation per billing period.

User Management (access tables): 4 user roles with 5 portal types. Multi-tenant data isolation. Session-based impersonation for admin support. Audit logging at page and model level.

Source: portal_stealth_locked_values. Feature status confirmed as "Production" across all areas.

Production Data Running Through the Schema

The tables are not empty structures. They are processing real operational data:

Data Category Volume
Leads processed 616,543
Contact points resolved 958,937
Lead activities tracked 530,077
Lead events captured 503,412
Blacklist entries 306,676
Outbound deliveries 76,836
Transactions processed 75,125
Affiliate conversions 5,422

Source: portal_stealth_locked_values. Production database snapshot as of January 2026.

According to Statista's 2024 Database Performance Report, the average production database handles between 100,000 and 1,000,000 records across its primary tables. PRJ-01's 616,543 leads with 958,937 associated contact points and 530,077 tracked activities places it solidly in production territory.

Build Metrics

This 135-table architecture was built in 74 active development days:

Build Metric Value
First commit October 8, 2025
Most recent commit January 31, 2026
Calendar span 115 days
Active development days 74
Total commits 1,394
Average commits per active day 18.8
Primary developer (Michael George Keating) 86.8% of commits
Contractor (CON-01) 10.7% (dashboard work)
AI-assisted scaffolding 2.5%

Source: portal_stealth_locked_values. Git-verified build data.

The replacement value of this system at mid-market US rates: $780,000 to $1,560,000, with an estimated 12 to 18 month timeline using a 5-person team.

Source: portal_stealth_locked_values. Estimates from FullStack 2025 Price Guide, Keyhole Software 2026 Benchmarks, Qubit Labs 2026.

Actual build cost: $16,800. That is a 46x to 93x multiple on cost.

How It Works

135 database tables is not complexity for its own sake. It is the minimum schema required to handle the full data lifecycle of a lead-driven business in one system.

The alternative — the SaaS approach — spreads this same data across six vendor databases, each with their own schema, their own identity system, and their own limitations. The data exists in all cases. The question is whether it exists in one connected place or in six disconnected places.

The 31 DailyStat rollup tables illustrate why a unified schema matters. Every night, 6 scheduled jobs aggregate data from across the platform into analytics tables: leads by source, revenue by affiliate, conversions by campaign, engagement by persona. This aggregation takes minutes because all the data is already in one database. With six SaaS vendors, the same analytics would require pulling data from six APIs, reconciling different formats, and hoping none of the connections broke overnight.

What This Means for Business Operators

When evaluating custom software, look at the database schema. It tells you more than the marketing page. 15 tables is an MVP. 50 tables is a functional application. 135 tables with 112 models, 104 controllers, and 31 analytics rollups processing 616,543 leads and 75,125 transactions — that is production infrastructure.

PRJ-01 was built for $16,800 in 74 active days. Its replacement value is $780,000 to $1,560,000. It replaced $19,909 in SaaS vendor costs over 28 months. And the 135-table architecture handles capabilities — identity resolution, lead-level revenue attribution, audience segmentation across 26 personas — that none of the SaaS vendors it replaced could provide individually or collectively.

The architecture is the asset. Everything else is a feature list.


Related: [C5_S104 — Why Unified Data Infrastructure Changes Everything] | [C5_S109 — How to Migrate 616,000+ Leads Off a Legacy CRM] | [C5_S108 — PRJ-01 vs LeadsPedia vs TUNE vs Phonexa]

References

  1. Percona (2024). "Database Survey." Production application table count benchmarks (30-50 average, 100-500 enterprise).
  2. Statista (2024). "Database Performance Report." Production database record volume benchmarks (100,000-1,000,000 records average).
  3. FullStack Labs (2025). "Custom Software Development Price Guide." Market replacement value benchmarks for production platforms.
  4. Keyhole Software (2026). "Software Development Benchmarks." Mid-market development cost estimates for enterprise-grade systems.