GS
growthskills
Browse
Back to all playbooks

Revenue Intelligence

Multi-source data warehouse, urgency scoring, close probability, and next-best-action.

AI & AgentsPaid
$ npx growthskills add revenue-intelligence

Revenue Intelligence Engine

This playbook covers how to build a conversational revenue intelligence engine that transforms marketing from reactive reporting to predictive intelligence. Instead of sales reps asking "give me leads from Illinois," the system outputs "here are the 12 accounts most likely to convert this month, ranked by composite score, with the recommended next action for each."


1. Architecture Overview

The revenue intelligence engine is a multi-layer system that ingests, normalizes, cross-references, and scores data from 12+ sources to produce actionable predictions and recommendations.

System Layers

Layer 1: DATA INGESTION
  ↓ Raw data from 12+ sources
Layer 2: NORMALIZATION
  ↓ Standardized, cleaned, categorized data
Layer 3: CROSS-REFERENCING
  ↓ Joined datasets with enrichment
Layer 4: SCORING
  ↓ Auto-scored urgency and close probability
Layer 5: INTELLIGENCE OUTPUT
  → Next best action recommendations
  → Prioritized lead lists
  → Campaign performance analytics
  → Email generation tied to resource availability

Why This Matters

Traditional marketing analytics is backward-looking: "Here is what happened last quarter." Revenue intelligence is forward-looking: "Here is what will happen next month if you take these actions." This shift from reactive to predictive is the competitive advantage that separates high-performing revenue teams from average ones.


2. Data Source Inventory

Full Source List

#Data SourceWhat It ContainsIngestion Method
1CRM (Salesforce)Leads, contacts, accounts, opportunities, activities, deal stages, revenueCSV export or API
2Marketing Automation (Pardot/HubSpot)Email engagement, form submissions, lead scores, campaign membershipCSV export or API
3Web Visitor Tracking (Snitcher or similar)IP-identified company visits, pages viewed, visit frequency, geographic dataCSV export or API
4Job Posting FeedsOpen positions by company, role, location, posting dateAPI scraping or data provider
5Pipeline ReportsOpportunity stage, value, expected close date, pipeline velocityCRM export
6Resource/Inventory DataAvailable service providers, products, or capacity by regionInternal database export
7Government Purchase OrdersPublic procurement data, spending by category, vendor awardsPublic data portals, API
8Board Meeting TranscriptsMeeting minutes with budget discussions, priority topics, vendor mentionsPublic records, API scraping
9Conference ProfilesAttendee lists, speaker bios, session registrationsEvent platform exports
10Sales Engagement Data (Salesloft/Outreach)Email opens, replies, calls, meetings, sequence enrollmentPlatform export or API
11Competitor AnalysisTechnology stack detection, market positioning, pricing intelligenceWappalyzer, publicwww.com, manual research
12Contact DirectoriesVerified contact information, organizational structureData provider exports

Filtering and Scoping

Not all data is relevant. Apply scoping rules on ingestion:

  • Web visitor tracking: Filter to only your target market. For example, if you sell to mid-market companies in a specific vertical, filter your visitor intelligence data to only show visits from target accounts. Exclude irrelevant industries and unidentified visitors.
  • Job postings: Filter to roles relevant to your product or service. A posting for a custodian is not a buying signal for marketing software.
  • Government data: Filter to agencies and departments in your target market. Scope by geography and budget category.
  • CRM data: Exclude disqualified leads and closed-lost opportunities older than 12 months (they clutter the analysis without adding signal).

3. Normalization Rules

Why Normalization Is Non-Negotiable

Data from 12 sources uses 12 different naming conventions. Without normalization, your intelligence engine cannot cross-reference effectively.

Normalization Mapping Table

Raw Value (Source)Normalized CategoryNormalization Rule
PardotEmail LeadsAll marketing automation leads = "Email Leads"
HubSpot EmailEmail Leads
Google AdsPaid SearchAll search engine ad platforms = "Paid Search"
Bing AdsPaid Search
LinkedIn Sponsored ContentLinkedIn AdsAll LinkedIn ad types = "LinkedIn Ads"
LinkedIn InMailLinkedIn Ads
SnitcherWeb Visitor IntelligenceFilter to target vertical only
Organic - GoogleOrganic SearchAll organic search = "Organic Search"
Organic - BingOrganic Search
Webinar - ZoomWebinarAll webinar platforms = "Webinar"
Webinar - GoToWebinarWebinar
Trade ShowEventAll in-person events = "Event"
ConferenceEvent
Partner ReferralPartnerAll partner-sourced = "Partner"
Employee ReferralInternalAll internal sources = "Internal"

Geographic Normalization

Raw ValueNormalized
CA, Calif., CaliforniaCalifornia
NY, N.Y., New YorkNew York
TX, Tex., TexasTexas

Company Name Normalization

Raw ValueNormalized
ABC Corp.ABC Corporation
ABC CoABC Corporation
A.B.C. IncABC Corporation

Implementation

  • Build a normalization lookup table that is applied automatically on data import.
  • Review and update the lookup table monthly as new raw values appear.
  • Log every normalization applied for audit purposes.
  • Flag unmatched values for manual review rather than silently dropping them.

4. Dataset Versioning and Management

Master Log Approach

Every uploaded dataset must be tracked with metadata:

FieldDescriptionExample
Dataset NameDescriptive name"Salesforce Leads Export - Q1 2024"
Upload DateWhen the data was uploaded2024-04-01
Source PlatformWhere the data came fromSalesforce
Record CountNumber of records15,432
Date RangeTime period the data coversJan 1, 2024 - Mar 31, 2024
Baseline vs. UpdateIs this a new baseline or an append?Baseline
Contextual NotesAny data quirks or caveats"Excludes records with Status = 'Junk'"

Baseline vs. Append/Update

TypeWhen to UseProcess
New BaselineQuarterly or when data structure changesReplace the entire dataset. Old version archived
AppendMonthly or when adding new recordsAdd new records to existing dataset. Deduplicate
UpdateWhen existing records have changed fieldsMatch on unique ID and update changed fields only

Version History

Maintain a version log for every dataset:

Dataset: Salesforce Leads
v1.0 - 2024-01-15 - Initial baseline, 12,000 records
v1.1 - 2024-02-15 - Monthly append, +1,200 records (total: 13,200)
v1.2 - 2024-03-15 - Monthly append, +1,150 records (total: 14,350)
v2.0 - 2024-04-01 - New quarterly baseline, 15,432 records (includes field additions)

Why This Matters

  • Without versioning, you cannot tell if changes in your intelligence output are due to real market shifts or data quality issues.
  • Versioning enables rollback if a corrupted dataset is uploaded.
  • Contextual notes prevent future you (or your teammate) from misinterpreting the data.

5. Cross-Referencing Capabilities

Cross-referencing is where the revenue intelligence engine creates value that no single platform can provide alone.

Example Cross-Reference Queries

Query 1: High-probability net-new prospects "Find companies in California who visited our site in the last 30 days, are not current customers, do not have an open deal in Salesforce, and have open job postings for roles we support."

This query joins:

  • Web visitor data (Snitcher) -- California filter, last 30 days
  • CRM accounts -- exclude current customers
  • CRM opportunities -- exclude accounts with open deals
  • Job posting data -- matching role filter

Query 2: Re-engagement targets "Show me contacts who were active 6 months ago (email opens, site visits) but have gone silent in the last 90 days, whose companies still have active job postings."

This query joins:

  • Email engagement data -- active 4-7 months ago, inactive last 90 days
  • Web visitor data -- no visits in 90 days
  • Job posting data -- active postings (confirming they still have the need)

Query 3: Competitive displacement opportunities "List accounts where we detect competitor technology, who have visited our comparison page, and whose current contract is likely up for renewal (based on purchase order dates)."

This query joins:

  • Competitor analysis data -- competitor technology detected
  • Web visitor data -- visited comparison/alternative pages
  • Government purchase orders -- contract dates indicating renewal timing

Join Logic

  • Primary join key: company name (normalized) or company domain.
  • Secondary join key: contact email address.
  • Always use fuzzy matching for company names (exact matching misses too many legitimate matches due to naming variations).
  • Apply exclusion filters after joins, not before. Join everything first, then filter.

6. Auto-Scored Urgency Ranking

Signal Scoring Model

Each data point contributes to a composite urgency score per account.

SignalPointsData SourceDecay
Job posting for supported role, posted <14 days+25Job posting feedDecays 5 pts/week
Job posting for supported role, posted 15-30 days+20Job posting feedDecays 5 pts/week
Job posting for supported role, posted 31-60 days+15Job posting feedStatic
Website visit, pricing page, last 7 days+25Web visitor trackingDecays 10 pts/week
Website visit, any page, last 7 days+10Web visitor trackingDecays 5 pts/week
Website visit frequency >3x in 30 days+15Web visitor trackingRecalculated monthly
Email click, last 14 days+10Marketing automationDecays 5 pts/week
Email open (no click), last 14 days+5Marketing automationDecays 3 pts/week
Board meeting mention of relevant topic+20Board meeting transcriptsStatic for 90 days
Purchase order for related category+20Government procurementStatic for 180 days
Conference registration/attendance+10Conference profilesStatic for 60 days
Budget size above median+10Financial dataUpdated annually
Company size matches ICP+10CRM firmographic dataStatic
No activity in 60 days-15All engagement sourcesResets when activity resumes
Previously declined meeting-10Sales engagement dataDecays +5 pts/quarter
Competitor technology detected+10Competitor analysisStatic

Composite Score Interpretation

Score RangeClassificationRecommended Action
80+HotImmediate sales outreach. Same-day follow-up
60-79WarmPriority outreach within 48 hours
40-59EngagedNurture campaign enrollment. Sales awareness
20-39AwareMarketing nurture. Monitor for signal changes
Below 20ColdExclude from active outreach. Archive

Score Recalculation Cadence

  • Recalculate scores weekly for all accounts with a score above 20.
  • Recalculate monthly for accounts below 20 (looking for signal changes).
  • Trigger immediate recalculation when a new data source is uploaded.
  • Alert sales when any account crosses a threshold (20→40, 40→60, 60→80).

7. Close Probability Modeling

Building the Model

Use historical closed-won and closed-lost data to identify which signal combinations predict conversion.

Feature Selection

Analyze your last 200+ closed deals (won and lost) and identify which signals were present:

FeaturePresent in Closed-WonPresent in Closed-LostPredictive Power
Pricing page visit72%31%High
Job posting active65%28%High
3+ site visits in 30 days58%22%High
Email click in last 30 days61%35%Medium
Webinar attendance45%18%Medium
Board meeting mention38%12%Medium
Conference attendance29%15%Low-Medium
Purchase order on record52%20%High

Simple Probability Model

For teams without data science resources, use a weighted probability model:

Close Probability = (Sum of weighted signals present) / (Maximum possible weighted score) x Base Close Rate Multiplier

Where the Base Close Rate Multiplier adjusts for your overall market close rate.

Example Output

ACCOUNT: Example Target Company
URGENCY SCORE: 82 (Hot)
CLOSE PROBABILITY: 73%

SIGNALS PRESENT:
✓ Job posting for supported role (posted 5 days ago) [+25]
✓ Pricing page visited 3x in last 10 days [+25]
✓ Email clicked last week [+10]
✓ Board meeting approved related budget [+20]
✓ Company size matches ICP [+10]
✗ No conference attendance detected
✗ No purchase order on record

PREDICTED CLOSE TIMELINE: 30-45 days

8. Next Best Action Recommendations

The Shift from Lists to Actions

Traditional marketing gives sales a list: "Here are 50 leads in Texas." Revenue intelligence gives sales actions: "Here are the 8 accounts most likely to close this month, and here is exactly what to do with each one."

Action Recommendation Logic

Account SituationRecommended ActionPriority
Score 80+, no prior sales contactImmediate personalized outreach referencing their specific signalsUrgent
Score 80+, prior contact but no responseMulti-channel approach: call + email + LinkedIn + direct mailUrgent
Score 60-79, job posting activeSend relevant content about the role/challenge their posting addressesHigh
Score 60-79, webinar attendeeFollow up on webinar topic with relevant case studyHigh
Score 40-59, multiple site visitsEnroll in targeted nurture campaignMedium
Score 40-59, board meeting signalShare relevant industry report or benchmark dataMedium
Score dropped from 60+ to below 40Re-engagement campaign: new angle, different contentMedium
Score below 20 for 90+ daysArchive. Remove from active outreachLow

Daily Sales Brief

Generate an automated daily brief for each sales rep:

DAILY INTELLIGENCE BRIEF - [Date]
Rep: [Territory/Region]

🔴 URGENT (Score 80+, Action Required Today):
1. [Account] - Score: 87 - Job posting + pricing page + email click
   ACTION: Call [contact] at [phone]. Reference their [role] posting.

2. [Account] - Score: 82 - Board meeting + site visits + budget signal
   ACTION: Send comparison email. They are evaluating competitors.

🟡 HIGH PRIORITY (Score 60-79):
3. [Account] - Score: 71 - Webinar attendee + job posting
   ACTION: Follow up with case study relevant to their region.

4. [Account] - Score: 65 - Multiple site visits + email engagement
   ACTION: Invite to next webinar. Warm before direct outreach.

📊 PORTFOLIO HEALTH:
- Total accounts in territory: 145
- Hot (80+): 4
- Warm (60-79): 12
- Engaged (40-59): 31
- Monitoring: 98
- Score increases this week: 8 accounts
- Score decreases this week: 5 accounts

9. Lead Source Efficiency Analysis

By State/Region

Cross-reference lead source with geographic data to understand which channels work best in which regions.

RegionBest Lead SourceCPLPipeline GeneratedClose Rate
CaliforniaLinkedIn Ads$85$320K18%
TexasWebinars$22$215K22%
New YorkOrganic Search$0$180K15%
FloridaEmail Campaigns$8$145K20%
IllinoisEvents$150$280K25%

By Role/Persona

PersonaBest Lead SourceAvg Deal SizeClose RateTime to Close
Director+LinkedIn Ads$85K22%45 days
ManagerWebinars$42K28%30 days
CoordinatorOrganic Search$18K35%21 days
ExecutiveEvents + Referral$120K15%90 days

Actionable Insights

  • Allocate budget to channels that produce revenue, not just leads.
  • If LinkedIn Ads produce the highest CPL but also the highest average deal size, the ROI may still be best.
  • Regional performance differences inform where to focus expansion efforts.
  • Role-based analysis informs content and targeting strategy per channel.

10. Pipeline vs. Closed-Won Attribution by Channel

Multi-Touch Attribution Model

ChannelPipeline Created% of Total PipelineClosed-Won Revenue% of Total RevenuePipeline-to-Close Rate
Email/Nurture$1.2M28%$380K32%32%
Webinars$1.0M23%$250K21%25%
LinkedIn Ads$850K20%$210K18%25%
Organic Search$520K12%$165K14%32%
Events$400K9%$120K10%30%
Partner/Referral$350K8%$75K6%21%
Total$4.32M100%$1.2M100%28% avg

What This Reveals

  • Channels with high pipeline creation but low close rates need better qualification or nurture.
  • Channels with high close rates but low volume deserve more investment.
  • The gap between pipeline and closed-won by channel reveals where leads get stuck in the funnel.

11. Email Generation Tied to Resource Availability

The System

When you have an inventory of service providers, consultants, products, or resources, the intelligence engine generates personalized outreach emails that match specific resources to specific prospects.

How It Works

  1. Resource database query: For each target region/state, query available resources with their credentials, specializations, and capacity.
  2. Prospect matching: Match prospects in that region who have active signals (job postings, site visits, email engagement).
  3. Email generation: AI generates a personalized email per prospect that:
    • References their specific situation (e.g., their open job posting, their recent site visit)
    • Spotlights 1-2 available resources in their region with relevant credentials
    • Includes a specific CTA (schedule a call, review resource profiles)
    • Closes with an engaging question to prompt a reply

Email Template Structure

Subject: [Specific resource type] available in [their region]

Hi [Name],

I noticed [their specific signal - job posting, event attendance, etc.].

We currently have [resource type] available in [their region]:

• [Resource Name] - [Credential] - [Specialization] - [Availability]
• [Resource Name] - [Credential] - [Specialization] - [Availability]

[One sentence about how these resources address their specific need].

Would it be helpful to review their full profiles? I can send them over
and set up a quick call to discuss fit.

[Closing question relevant to their situation]

Best,
[Sender]

Gap State Handling

Not every region will have available resources. The system handles gaps with a cascading logic:

ScenarioAction
Resources available in prospect's regionGenerate standard email with resource spotlight
No current resources, but resources in earlier data filesCheck archived resource data. If match found, verify availability before including
No resources in any data file for the regionGenerate modified email without resource spotlight. Focus on the prospect's challenge and offer to discuss solutions. Flag the gap for the supply team
Resource available but credentials do not match needGenerate email highlighting adjacent capabilities. Flag for manual review before sending

Scale and Measurability

  • The system can generate hundreds of personalized emails per day across all regions.
  • Each email is measurably different in content, not just mail-merge tokens.
  • Track performance by state, resource type, and lead source to identify which combinations drive the highest response rates.
  • Continuously improve email templates based on reply rate data.

12. Campaign Performance Across Dimensions

Multi-Dimensional Analysis

The intelligence engine enables performance analysis across dimensions that no single platform can provide:

By State x Lead Source: Which lead sources work best in which states? Maybe LinkedIn Ads crush it in California but underperform in rural states.

By Resource Type x Region: Which resource types are in highest demand in which regions? This informs supply procurement.

By Campaign x Deal Size: Which campaigns generate the largest deals? Allocate budget accordingly.

By Time Period x Channel: Are there seasonal patterns in channel performance? Optimize budget allocation by quarter.

Dashboard Design

The intelligence engine should power a dashboard with these views:

  1. Pipeline Health: Current pipeline by stage, velocity, and predicted close dates.
  2. Channel Performance: CPL, pipeline, and revenue by channel with trend lines.
  3. Territory View: Regional performance with heat maps.
  4. Account Prioritization: Top 20 accounts by urgency score with recommended actions.
  5. Supply-Demand Gap: Regions where demand exceeds supply (pricing opportunity) and vice versa.
  6. Forecast: Predicted pipeline and revenue for next 30/60/90 days based on current signals.

13. The Scarcity Index (Revisited for Revenue Intelligence)

Integration with the Intelligence Engine

The scarcity index is not just a pricing tool. It is a core input to the revenue intelligence engine.

Full Scarcity Index Calculation

Supply Signals (Lower = More Scarcity):

  • Active job postings for roles you support (by region): more postings = more need = more scarcity of your solution
  • Available inventory/resources in your database (by region): less availability = more scarcity
  • Competitor presence (by region): fewer competitors = more pricing power

Demand Signals (Higher = More Demand):

  • Web visits from target accounts in the region
  • Email engagement rates from contacts in the region
  • Budget indicators (purchase orders, board meeting approvals)
  • Inbound inquiry volume from the region

Output:

Scarcity Index = (Demand Signal Score) / (Supply Signal Score)
Scarcity IndexInterpretationRevenue Intelligence Action
Below 0.8OversuppliedReduce spend in this region. Consider incentive pricing
0.8 - 1.2BalancedStandard operations. Monitor for shifts
1.2 - 1.8Moderate scarcityIncrease outreach intensity. Standard+ pricing
1.8 - 2.5High scarcityPriority region. Premium pricing. Urgency messaging
Above 2.5Critical scarcityDeploy all available resources. Maximum pricing. Alert leadership

Using Scarcity in Outreach

The intelligence engine incorporates scarcity data into email generation:

  • High scarcity regions get urgency messaging: "We have limited availability in your area for the upcoming quarter."
  • Moderate scarcity regions get value messaging: "We have strong coverage in your region with several qualified resources."
  • Oversupplied regions get competitive messaging: "We would like to earn your business with our specialized approach."

14. Building the Engine: Implementation Roadmap

Phase 1: Data Foundation (Weeks 1-4)

  • Identify and gain access to all 12 data sources.
  • Build export and import processes for each source.
  • Create the master log for dataset tracking.
  • Define and implement normalization rules.
  • Set up the data storage environment (cloud database, data warehouse, or structured file system).

Phase 2: Cross-Referencing (Weeks 5-8)

  • Build join logic for company name matching (fuzzy matching implementation).
  • Create initial cross-reference queries (start with 5-10 high-value queries).
  • Validate cross-reference accuracy with manual spot checks (check 50+ matched records).
  • Refine normalization rules based on join failures.

Phase 3: Scoring (Weeks 9-12)

  • Analyze historical closed-won data to determine signal weights.
  • Implement the urgency scoring model.
  • Build close probability model.
  • Test scoring accuracy against known outcomes (backtest on 6 months of historical data).
  • Calibrate weights based on backtest results.

Phase 4: Intelligence Output (Weeks 13-16)

  • Build next best action recommendation logic.
  • Create daily sales brief generation.
  • Implement email generation tied to resource availability.
  • Design and build dashboards.
  • Train sales team on using the intelligence output.

Phase 5: Optimization (Ongoing)

  • Review scoring accuracy monthly. Compare predictions to actual outcomes.
  • Adjust signal weights quarterly based on new data.
  • Add new data sources as they become available.
  • Expand cross-reference queries based on sales team feedback.
  • Continuously improve email templates based on performance data.

15. The Competitive Advantage

Companies using a revenue intelligence engine operate fundamentally differently from those that do not:

Without Intelligence EngineWith Intelligence Engine
Sales asks marketing for leadsSystem pushes prioritized accounts to sales
Marketing reports on last quarterSystem predicts next quarter
Pricing is based on gut feelingPricing is informed by scarcity index
Outreach is generic and batchOutreach is personalized and signal-driven
Pipeline forecasting is guessworkPipeline forecasting is data-modeled
Channel allocation is based on traditionChannel allocation is based on attribution
Competitor intelligence is occasionalCompetitor intelligence is continuous
Resource planning is reactiveResource planning is predictive

The investment in building this engine is significant (3-4 months of focused effort). The return is transformative. Teams using predictive intelligence systems close 20-40% more deals per rep, allocate budget 30-50% more efficiently, and forecast revenue with 2-3x more accuracy.

This is the future of revenue operations. The companies that build it now will have an insurmountable data advantage over those that start later.

Building the Engine in Practice — Three Tiers

The architecture described earlier in this playbook is the destination. Here is how to get there in practice, starting with zero engineering resources.

Tier 1 — What you can do today. Upload CSV exports (CRM leads, web visitor data, email engagement, pipeline reports) directly into Claude or ChatGPT and query across them in natural language. Ask questions like "show me accounts that visited our site in the last 30 days, are not current customers, and have an open opportunity" and get answers in seconds. This is a conversational data warehouse. You are cross-referencing multiple data sources without writing SQL or building dashboards. The limitation is that every new chat starts from scratch, and you have to re-upload files each session. But the value is immediate. Most marketers can start doing this today.

Tier 2 — Lightweight persistent app. Build a simple application with persistent storage and a Claude-powered query front end. This means your datasets stay indexed between sessions. You upload a new CRM export and it appends to the existing baseline rather than replacing it. You can track dataset versions, log queries, and build a history of insights. This requires some technical setup (a database, a basic web interface, API integration) but no data engineering team. Claude Code can build this for you in a few sessions.

Tier 3 — Full predictive engine. A proper data stack with automated ingestion from APIs (CRM, web analytics, email platforms, procurement databases), real-time scoring, close probability modeling, and next-best-action recommendations pushed to sales reps. This is where the urgency scoring and scarcity index calculations described earlier in this playbook run automatically rather than manually. This requires a data engineering investment, but the foundation built in Tier 1 and Tier 2 validates the logic before you spend on infrastructure.

The key insight. Tier 1 is not a compromise. It is where you validate whether cross-referencing your data sources actually produces actionable intelligence. If querying across your CRM, web visitors, and email engagement in Claude does not surface insights you did not already have, Tier 3 will not either. Start with Tier 1. Prove the value. Then build up.

In practice, Tier 1 has been used to cross-reference 12+ data sources (CRM, web visitors, email engagement, procurement records, competitor analysis, conference profiles, pipeline reports, and more) to produce per-account intelligence reports that give sales teams actionable context before every conversation. The full predictive engine is a multi-month investment. The conversational version of it is something you can run on your laptop this afternoon — and it answers the same questions.