Trusted by 1,800+ founders worldwide
How We Calculate SaaS Revenue & Ad Spend
All data comes from public advertising transparency regulations. We aggregate, calculate, and validate—so you get accurate intelligence.
100% Public Data
Advertising transparency laws require platforms like Meta to publish data on active advertisements. This data—including reach, impressions, and creative content—is publicly accessible through official APIs. We collect, aggregate, and transform this raw data into actionable intelligence.
Our Formulas
Every metric on Proven SaaS is calculated using these validated formulas.
Reach → Ad Spend
How we calculate weekly advertising spend
Ad Spend = (Total Reach ÷ 1,000) × CPMNumber of unique users who saw ads (from Meta Ad Library)
Cost per 1,000 impressions (varies by country)
Estimated $ spent on advertising
CPM Benchmarks We Use
UK ~$10 · Germany ~$7-8 · France ~$6-7 · Netherlands ~$8 · Other EU ~$5-7
Ad Spend → Paid Revenue
Revenue generated from paid acquisition
Paid Revenue = Weekly Spend × 4 × 1.5 ROASMonthly ad spend (4 weeks)
Conservative return on ad spend
Monthly revenue from ads channel
Why 1.5× ROAS?
Sustainable SaaS ROAS ranges from 1.3× to 1.8×. We use 1.5× as a conservative middle estimate. Companies wouldn't sustain ad spend at loss (<1×), and 2×+ is rare at scale.
Total MRR Estimate
Estimating full monthly recurring revenue
Est. MRR = Paid Revenue × Channel MultiplierChannel Multiplier: Most SaaS have organic, direct, and other acquisition channels. Paid ads typically represent 40-70% of total revenue. We apply a 1.5-2× multiplier to account for non-paid revenue.
How We Aggregate Data
Raw advertising data becomes intelligence through careful aggregation.
Total Reach
We sum reach across all active and historical ads for a brand. Meta provides reach ranges (e.g., "10K-50K"); we use midpoint values and aggregate across all tracked ads.
Total Reach = Σ (ad_reach_midpoint) for all adsDemographics (Age, Gender, Country)
Meta provides demographic breakdowns per ad. We aggregate these across all ads weighted by reach to show audience composition.
% Age 25-34 = Σ (reach_25_34) ÷ Total Reach × 100Weekly Spend History
We track reach deltas week-over-week. New reach × CPM = that week's estimated spend. This creates spend trend charts.
Week N Spend = (Reach_WeekN - Reach_WeekN-1) ÷ 1000 × CPMAd Count Trends
We track total ads and active ads over time. Spikes indicate new campaign launches. Drops indicate paused or ended campaigns.
Validation & Confidence
We validate our formulas against real revenue disclosures from founders.
How We Validate
- ✓Cross-reference with founder tweets, IndieHackers posts, podcast interviews
- ✓Compare against open startup dashboards (Buffer, Baremetrics, etc.)
- ✓Sanity check with employee counts and typical ARR/employee ratios
- ✓Track companies over time to validate growth trajectory estimates
What We Don't Capture
Organic Revenue
SEO, word-of-mouth, and direct traffic revenue isn't directly measurable from ad data.
Non-Meta Ads
Google Ads, LinkedIn, TikTok spend isn't included in Meta Ad Library data.
Enterprise Deals
Large B2B contracts typically don't come through paid social ads.
Exact ROAS
Actual ROAS varies by company. We use conservative estimates (1.5×).
Bottom line: Our estimates represent a floor for revenue from paid acquisition. Total company revenue is typically higher.
See the data for 14,500+ SaaS
Revenue estimates, ad intelligence, and competitive insights—all calculated using this methodology.