Buy sites direct. No middleman.
Browse profitable websites and apps. Contact sellers directly. No fees, no commissions, no one taking a cut.
Browse profitable websites and apps. Contact sellers directly. No fees, no commissions, no one taking a cut.
Revenue verification is the most important part of website due diligence. A seller can claim any number on a listing — your job is to independently confirm that money is actually flowing into the business at the level stated. This guide walks you through a complete revenue verification process for any type of online business, from content sites and SaaS tools to eCommerce stores and newsletters. See also: full due diligence guide, acquisition checklist, avoiding scams and fraud FAQ, website listing evaluation guide.
Before you accept any revenue screenshots or exports, request direct read-only access to the seller's actual platforms. Screenshots and PDFs can be edited; live platform access cannot. The minimum access you need is: (1) Google Analytics 4 — Owner or Viewer access to the property, not just a screenshot. Verify that the GA4 property matches the domain in the listing and that the data stream is active. (2) Google Search Console — confirm it is verified on the same domain. (3) The primary revenue platform — Stripe, PayPal, Mediavine, Raptive, AdSense, Amazon Associates, ShareASale, or whichever platform processes the money. For SaaS businesses, also request read-only access to the billing platform (Stripe, Paddle, Lemon Squeezy). If a seller refuses to grant read-only access to revenue platforms and instead offers only static screenshots for a deal above $5,000, treat this as a serious red flag. Reputable sellers expect this request during due diligence.
Open GA4 and pull the last 12 months of organic sessions by month. Then pull the corresponding revenue by month from the seller's stated revenue source. The two graphs should correlate: months with higher organic traffic should generally produce higher revenue (for content sites and affiliate sites), and months with lower traffic should show lower revenue. A mismatch — such as a seller claiming steadily growing revenue while GA4 shows a significant organic traffic decline — is a major red flag that requires explanation. For SaaS businesses, traffic and revenue may not correlate as directly (MRR is recurring and does not depend on monthly traffic), but you should still verify that active user counts in the analytics platform align with the subscriber count the seller claims. Also check the GA4 'Events' report for purchase or conversion events if the site runs eCommerce or lead generation — these data points can confirm or contradict the revenue figures provided.
The most reliable revenue verification source is bank statement deposits or payment processor transaction exports. Ask for Stripe dashboard exports, PayPal transaction history, or actual bank statements showing monthly deposits matching the seller's claimed SDE figures. In Stripe, ask the seller to export a monthly revenue summary from the Stripe dashboard and share the CSV. Key things to check: (1) Total net revenue (after refunds and fees) should match the claimed monthly SDE inputs. (2) Refund rate — a high refund rate (above 5–10% for eCommerce) suppresses actual net revenue and SDE. (3) Transaction pattern — steady recurring charges (SaaS) vs. one-time spikes (events, promotions) vs. smooth monthly ad revenue payments. (4) For ad-monetized sites, Mediavine and Raptive send monthly ACH deposits that appear on bank statements — request the last 12 months of these to verify ad revenue.
For content sites monetized with display advertising, request read-only access to the ad network dashboard (Mediavine, Raptive, AdSense, Ezoic). In Mediavine, navigate to Reports > Earnings by Month and confirm the monthly payouts match what the seller has claimed. Key metrics to review: (1) RPM (revenue per 1,000 sessions) — confirm it aligns with the network tier (Mediavine typically 15–45 RPM; AdSense typically 3–8 RPM). An RPM claim significantly above network benchmarks warrants investigation. (2) Total impressions vs. sessions ratio — should align with typical page-views-per-session figures for the site type. (3) Trend: is RPM stable, growing, or declining over the last 12 months? A declining RPM trend suppresses future earnings and affects the SDE calculation. Also verify that the seller is actually an approved publisher for the network they claim — all major networks allow this check via the site URL lookup.
For affiliate-monetized content sites, request read-only access to all affiliate program dashboards: Amazon Associates, ShareASale, CJ Affiliate, Impact, Awin, or any direct affiliate relationships. In Amazon Associates, the seller can share read-only access via the Amazon Associates Dashboard, which shows clicks, conversion rate, revenue, and orders by month. Key things to verify: (1) Total affiliate revenue by month matches the claimed SDE inputs. (2) Click-to-conversion rate — a content site with thousands of affiliate link clicks but near-zero conversions may have a broken funnel or inflated traffic that does not actually engage with the content. (3) Revenue concentration — what percentage of affiliate revenue comes from a single program? A content site earning 90% from Amazon Associates and 10% from everything else has material platform risk if Amazon changes its commission rates (which it has done multiple times). (4) Commission rate history — if the seller received a higher rate previously and revenue has since dropped, confirm the current rate will apply going forward.
For SaaS businesses and subscription newsletters, the primary verification source is the billing platform — Stripe, Paddle, Lemon Squeezy, or Braintree. Ask for read-only access to the Stripe dashboard and navigate to Dashboard > Revenue > MRR chart for the last 12 months. Confirm: (1) MRR is consistent with the seller's stated figures. Look for the net MRR chart (new MRR + expansion MRR minus churned MRR). (2) Customer count — the number of active subscribers should align with what the seller has claimed. A seller claiming $5,000 MRR from 50 customers at $100/month should show exactly that in Stripe. (3) Churn rate — Stripe's churn dashboard shows monthly subscriber attrition. If churn is higher than the seller disclosed, the trailing revenue figure may look fine but the forward-looking revenue stream is weaker than represented. (4) Refunds and disputes — a high dispute rate can indicate product quality issues or deceptive billing practices. Also verify in the billing platform that any lifetime deal (LTD) holders are not counted as active MRR subscribers — LTD users appear in Stripe but should be excluded from MRR calculations.
After gathering data from each individual platform, perform a final reconciliation against the seller's P&L statement. Every dollar of revenue on the P&L should trace back to a specific platform or account. Common discrepancies to investigate: (1) Revenue on the P&L that cannot be traced to any platform dashboard — ask the seller to explain what account this comes from. (2) Revenue that appears in platform dashboards but is not on the P&L — this sometimes happens with ad network payments that are delayed by 30–60 days, but should be explainable. (3) The SDE calculation — verify that all add-backs the seller is claiming (owner salary, personal expenses, one-time costs) are genuine and documented. Ask to see receipts or bank statements for any large add-backs above $500/month. A clean P&L reconciliation — where every revenue line traces to a verified platform and every expense traces to a statement — is the clearest signal that a seller is operating transparently. Sellers who cannot or will not complete this reconciliation should be treated with significant caution.
Different business types require different verification sources. Use this reference to confirm you have covered all relevant platforms before completing your due diligence.
| Business Type | Primary platforms to access | Bank/payment check | Key metrics to verify |
|---|---|---|---|
| Content Site | GA4, Google Search Console, Mediavine/Raptive/AdSense dashboard | Monthly ad network ACH deposits vs. dashboard payouts | RPM trend, traffic-to-revenue correlation, affiliate dashboard clicks-to-revenue |
| SaaS / Tool | Stripe or Paddle MRR dashboard, product analytics (Mixpanel/PostHog) | Monthly Stripe payouts vs. MRR claims | Net MRR chart, churn rate, LTD user count excluded from MRR |
| eCommerce | Shopify analytics, Stripe/PayPal, ad platform (Meta Ads, Google Ads) | Monthly Shopify/Stripe net revenue vs. P&L gross revenue | Refund rate, return rate, COGS reconciliation, ad spend as % of revenue |
| Newsletter | Beehiiv/ConvertKit/Substack analytics, Stripe (paid subscribers), Sponsorship invoices | Monthly sponsor payments vs. booked revenue | Active subscriber count, open rate, sponsor fill rate, paid vs. free subscriber split |
| Affiliate Site | Amazon Associates, ShareASale, CJ Affiliate, Impact dashboards | Monthly affiliate commission deposits vs. dashboard totals | Click-to-conversion rate, revenue concentration by program, cookie duration impact |
Most revenue discrepancies in website acquisitions are not outright fraud — they are optimistic representations, cherry-picked time periods, or calculation methods that favor the seller. But some patterns are deliberate misrepresentation. Know both.
Screenshots can be edited. PDFs can be fabricated. Insist on live dashboard access for any deal above $5,000.
For ad-monetized sites, traffic and ad revenue are directly correlated. Growing revenue on falling traffic usually means inflated figures or a very recent one-time event skewing the numbers.
A content site with 20,000 monthly sessions claiming $10,000/month in ad revenue at a 500 RPM rate is implausible. Typical Mediavine RPMs are 15–45. Use benchmarks to sanity-check claims.
Lifetime deal holders appear in Stripe or Paddle as customers but generate no recurring revenue. A SaaS with 200 active users but 150 of them on LTD plans has far lower MRR than represented.
Every add-back claimed on the P&L should be verifiable with bank statements or receipts. Unverifiable add-backs inflate SDE and the resulting asking price.
For deals above $10,000, refusal to grant read-only access to revenue platforms (Stripe, Mediavine, Amazon Associates) is the single most significant red flag in due diligence.
Browse active listings on Buy Sites Direct. Contact sellers directly — no broker fees, no commissions. Apply your revenue verification skills from day one.