What does each gap pattern mean for my business?
A customer in Stripe but not in QuickBooks means something different than a customer in HubSpot but not in Stripe. Here's what each gap pattern tells you about your business, and what to do about it.
The short answer
What do your gaps mean? Every missing-record pattern points to a specific business problem: broken billing, invisible customers, inflated marketing metrics, or lost sales opportunities. Knowing which gap pattern you have tells you exactly where your processes are failing.
Gap patterns are symptoms of process failures you cannot see
Most business owners think of data quality as a technical problem. “Our systems are not synced.” But every data gap is actually a process gap. Someone is paying you money that never hits your books. Or your sales team is working leads that already converted. Or your ad platform is taking credit for revenue it did not generate.
The gap pattern tells you which process is broken. Fix the process, and the data gap closes on its own.
Six gap patterns and what each one means
1. In Stripe, not in QuickBooks: broken billing pipeline
Someone is paying you through Stripe, but the payment was never recorded in your accounting software. This means unreconciled revenue. Your P&L understates income. Your bookkeeper has mystery deposits. And at tax time, these orphaned payments become a scramble to identify and categorize.
What to fix: Set up automatic invoice creation in QuickBooks for Stripe payments, or ensure your bookkeeper reconciles Stripe payouts weekly.
2. In QuickBooks, not in CRM: invisible customers
You have paying customers that your sales and marketing team does not know about. These people cannot be upsold, cross-sold, or even contacted for a testimonial. If they churn, no one on your team will notice because they were never in the pipeline.
What to fix: Ensure every new QuickBooks customer is also created as a CRM contact, either manually or through an integration.
3. In CRM, not in Stripe or QuickBooks: leads that fell through
Your CRM has contacts who never converted to paying customers, or who did convert but their payment was never linked back. If this number is high, it could mean your sales process has a handoff gap between “closed-won” and “payment received.”
What to fix: Audit your CRM pipeline stages and check that closed-won deals actually result in invoices and payments.
4. In Google Ads conversions, not in Stripe: inflated ROAS
Your ad platform says it drove a conversion, but there is no corresponding payment in Stripe. This could be a misattributed click, a form submission that never turned into a sale, or a duplicate conversion event. Either way, your return on ad spend is overstated.
What to fix: Verify your conversion tracking setup. Make sure conversion events fire only on actual purchases, not just page views or form submissions.
5. In CRM, not in Google Ads: marketing blind spots
You have customers that your marketing team cannot retarget, build lookalike audiences from, or exclude from acquisition campaigns. This means you are potentially spending ad dollars acquiring people who already bought from you.
What to fix: Regularly sync your customer lists to your ad platforms as exclusion audiences.
6. Single-system orphans: the unidentifiable
Records that exist in only one system and cannot be matched to anything else. These might be test accounts, one-time transactions with no customer info, or data entry errors. A small percentage is normal. Over 20% means your data hygiene needs serious attention.
What to fix: Audit your highest-volume orphan source. If most orphans come from Stripe, check whether guest checkouts are creating customer-less payments.
How to identify gap patterns manually
After exporting and matching customer lists from each system (see our guide on finding missing records), you need to categorize each gap.
In your spreadsheet, create a column called “Gap Pattern.” For each unmatched record, note which system has it and which system is missing it. Then use a pivot table or COUNTIF formulas to tally how many records fall into each pattern.
The hard part is not the counting. It is interpreting the results. A hundred records “In Stripe, not in QuickBooks” could mean $50,000 in unreconciled revenue or $500 in test transactions. You need to look at the actual records to understand the business impact.
Total time: 1-2 hours on top of the matching work. The categorization is straightforward once you have the matched data. The interpretation and action planning is what takes real thought.
Gap patterns shift as your processes change
You fix one integration and a gap shrinks. A team member leaves and a different gap opens. A new product launches with a different billing flow and creates a pattern you have never seen before. The only way to stay on top of this is continuous monitoring.
Or get gap pattern analysis automatically, every month
Bottomline categorizes every unmatched record by gap pattern and quantifies the business impact. Instead of a spreadsheet full of orphan records, you get a prioritized list of process gaps with dollar amounts attached.
Instead of interpreting raw spreadsheet data, you get a clear picture of which process gaps are costing you the most. And because the analysis runs monthly, you can see whether your fixes are working.