Short answer: This is a read-only audit you run on your own HubSpot with an AI agent like Codex or Claude Code. Twelve prompts point the agent at the revenue already inside your CRM: deals rotting in the pipeline, leads nobody worked, follow-up that arrives too late, single-threaded deals at risk, lapsed customers, churn exposure, lead sources that burn money, and margin you are quietly giving away. The agent reads, ranks, and drafts. It does not send, enroll, or change a single record until you approve. Run the preflight first, then prompts one through twelve, then the orchestrator to turn every finding into one ranked plan.
I spent part of this week sitting with a business owner who sells luxury building materials, the kind that go into the homes people build when budget is not the constraint. His whole business runs on HubSpot. Every contact, every deal, every quote lives in it.
We did the unglamorous part first. We downloaded Codex, set up its permissions, and connected his core systems: HubSpot, Outlook, and Gmail. Then we did the part that changes how an owner sees his own business. We pointed the agent at HubSpot and asked it to audit what was actually in there, and we checked its work as it went.
The first thing it surfaced: more than 130 contacts had no email address on file. Not a statistic. Real people, some of them sitting in open deals, who his team could not reliably reach through any sequence, automation, or report. So we told the agent to find those emails from public sources. It recovered more than fifteen percent of them and updated the records. Then it cleaned up duplicates and proposed a tighter set of deal tags so his pipeline stages would finally mean something.
He looked at the screen and asked the question almost every owner asks at that exact moment: "Okay. What next?"
That pause is the real limiter. Getting the agent connected feels like the hard part. It is not. The hard part is knowing what to point it at. A clean CRM is not money. The money is in the questions you ask it next, and most owners run out of questions right after the cleanup.
So I ran that exact problem through four different AI models, Claude, ChatGPT, Grok, and Codex, and pushed each one for what a CEO should actually audit before hiring another salesperson or buying another list of leads. What follows is the version I would hand a client. Twelve prompts. Each one hunts for revenue that already exists inside HubSpot and is quietly leaking out.
Every prompt looks in a place owners rarely check, because the money there does not announce itself:
- Deals rotting in the pipeline with no next step.
- Leads that showed real intent and nobody worked.
- Follow-up that arrives hours or days too late to convert.
- Large deals riding on a single contact who could leave.
- Customers who churned quietly, and the ones about to.
- Lead sources that look busy but never produce revenue.
- Margin given away in discounts nobody tracks.
First, make the agent prove what it can see
An AI agent will happily produce confident answers from incomplete HubSpot data. That is the one failure mode that makes an audit worse than useless, because it sends you chasing numbers that were never real. So the first prompt is not a revenue prompt. It forces the agent to show its work, declare what it can and cannot see, and stay in read-only mode for everything that follows.
Before running any revenue audit, inspect the HubSpot objects, associations, and properties available to you across contacts, companies, deals, activities, tickets, products, line items, campaigns, and workflows. Do not assume a field exists. Tell me which fields are present, which are missing, and which you will use as proxies. Operate in read-only mode. Do not create, update, delete, merge, export, enroll, or send anything. For every finding in the audits that follow, show: 1. the exact HubSpot fields used, 2. the calculation logic, 3. records excluded because data was missing, 4. a confidence level from 1 to 5, 5. estimated dollar impact where it can be calculated, 6. whether this is a true performance issue or a data-quality issue. If the data is too incomplete to support a conclusion, say so plainly instead of guessing.
Every prompt below runs read-only. The agent reads, calculates, ranks, and drafts. It does not send a message, enroll a contact, change a stage, or edit a record until you approve. That single rule is what makes this safe to run on a live CRM.
How to run it
- Connect HubSpot and your inbox first. The audit is only as good as what the agent can read. If your agent stalls and asks permission at every step, fix that once with the two-minute permissions fix.
- Run the preflight prompt. Let the agent tell you which fields exist and which it will treat as proxies before it draws a single conclusion.
- Run the twelve in order. Paste one, read what comes back, and keep the dollar figures and confidence scores it shows you.
- Finish with the orchestrator. It rolls every finding into one ranked plan so you are not staring at twelve separate tables.
Short on time? Prompts one through four are the fastest money: stalled deals, dirty data, unworked demand, and slow follow-up. The rest deepen the picture. New to all of this? Start with what Codex is, then come back.
1. Find the deals quietly rotting in your pipeline
Open deals with no logged activity and a close date already in the past are not a forecast. They are a list of decisions waiting to be made. This finds them and totals the dollars sitting still.
Pull every open deal in HubSpot. Flag any deal with no logged activity in 21 or more days, a close date already in the past, or no next step set. Rank by deal amount. Return a table with deal name, owner, amount, days stale, last activity, close date, next-step status, the likely reason it is stuck, and the recommended action. Total the dollars sitting in stalled deals, then give a conservative estimate of what is realistically recoverable.
2. Find the dirty data breaking your routing and reporting
Bad data does not stay a data problem. It breaks lead routing, drags down deliverability, and quietly corrupts every report you make decisions from. This surfaces the worst of it first.
Audit contacts, companies, and deals for duplicate records, missing or malformed emails, missing lifecycle stages, deals with no owner, companies with no associated contacts, contacts with no company, and records missing source attribution. Group the problems by type, count each, and give me the worst 50 records to fix first. Flag which issues are hurting email deliverability, lead routing, reporting accuracy, or sales follow-up.
3. Find the demand nobody is working
Some of your hottest buyers raised their hand and then sat untouched. This pulls everyone showing intent with no active sales motion behind them, and sorts them by what to do today.
Find contacts showing demand but with no active sales motion. Include: - contacts at MQL stage or higher with no associated deal, - leads with no owner, - contacts with no outbound activity in the last 30 days, - contacts who opened, clicked, visited a key page, or submitted a form in the last 14 days, - previously engaged contacts who have gone silent for 60 to 180 days. Rank by fit, lead score, signal strength, recency, and estimated value. Use the actual average deal size from closed-won deals to estimate pipeline value where possible. Sort each contact into one of four buckets: contact today, nurture, research first, or ignore. Draft short outreach for the top 25. Do not send anything.
4. Find out how slow your follow-up really is
The single biggest predictor of whether an inbound lead converts is how fast a human responds. This measures yours honestly and shows what slow follow-up is costing you, by owner and by source.
For every inbound lead from the last 180 days, calculate the time from lead creation, form submission, or first conversion event to the first human sales activity. Bucket response time into: under 5 minutes, under 1 hour, same day, next day, 3 or more days, and never contacted. Show conversion rate, pipeline created, and closed-won revenue for each bucket. Break the results down by owner, source, form, campaign, day of week, and hour of day. Estimate the revenue tied to slow or missing follow-up, and name the owners and sources with the biggest response-time problem.
5. Find where deals die in your sales process
This moves the question from which deals are stuck to where your sales process keeps breaking. You fix the stage, not the deal.
Analyze won and lost deal history from the last 12 months. Calculate stage-to-stage conversion rates, average and median time in each stage, and where deals most often die. Show me: - the stage with the worst pass-through rate, - the stage where deals sit longest before dying, - the stage where current open deals are most over-aged, - the dollars currently stuck in bottleneck stages, - the single process fix most likely to improve conversion. Then list current open deals that have exceeded the 75th-percentile time for their current stage.
6. Find the big deals riding on a single contact
A large deal with only one contact at the account is one job change away from dead. This finds the exposed ones and tells you which stakeholder to bring in next.
Find every open deal above [your threshold amount] that is associated with only one contact at the account, or that has engagement from only one active stakeholder. For each deal, show deal name, owner, amount, stage, associated contacts, last engagement by contact, the buyer roles that appear to be missing, a risk level, and the next stakeholder to engage. Identify whether we are missing an economic buyer, technical buyer, user champion, procurement contact, legal contact, or executive sponsor. Rank by amount at risk and give a one-line relationship-widening angle for the top 20.
7. Find revenue in closed-lost and lapsed customers
A former customer or a closed-lost deal is often warmer than a stranger. This builds a ranked win-back list from both, grouped by why they left in the first place.
Build a win-back list from two groups: 1. Closed-lost deals from the last 6 to 18 months. 2. Former customers with no purchase, renewal, or open deal in the last 12 months or more. Group the closed-lost deals by loss reason, especially no budget, bad timing, went silent, no decision, and internal priority changed. Rank every win-back opportunity by original deal size, historical spend, fit, and likelihood to re-engage. For the top 25, draft a short message that references their prior context, explains why the timing may be different now, and offers a low-friction next step.
8. Find expansion and referral revenue in your customer base
Your existing customers are two kinds of revenue at once: what you can sell them, and who they can send you. This maps both, in two ranked lists.
Analyze current customers by product purchased, historical spend, tenure, engagement, renewal date, support-ticket volume, and past expansion. Compare each customer against the full product and service list and identify the obvious expansion gaps. Separately, identify happy or high-value customers who look like strong candidates for referrals, introductions, testimonials, or case studies. Return two ranked lists: 1. Top 25 expansion opportunities, each with an estimated dollar amount and a reason. 2. Top 20 referral or advocacy opportunities, each with a specific ask. For each account, say whether the better move is upsell, cross-sell, referral, testimonial, case study, or executive check-in.
9. Find the renewals and accounts at risk
This turns renewals from a calendar reminder into a defense system, ranking accounts by churn risk and expansion upside at the same time.
Find every customer with a renewal date, contract end date, purchase anniversary, or subscription milestone in the next 180 days. For each account, analyze account value, recent engagement trend, support-ticket volume, unresolved tickets, product or service usage fields if available, last executive touch, open expansion opportunities, and prior renewal history. Rank accounts by combined churn risk and expansion upside. Show revenue at risk, the likely reason for the risk, the recommended owner, the outreach timing, and a combined renewal-plus-expansion angle.
10. Find your real best-fit buyer, from the data
CEOs chase what sounds good. The data knows what actually closes. This defines your real best-fit profile from won deals, then finds the open opportunities that match it.
Analyze closed-won deals from the last 12 months. Identify which industries, company sizes, lead sources, deal sizes, job titles, regions, and use cases closed fastest, won most often, and produced the highest average deal value. Define our real best-fit profile from that data, not from what we assume it is. Then scan open contacts, companies, and deals, surface the records that match this profile, rank them, and explain why each one matches the real ICP.
11. Find which lead sources actually make money
Some sources look busy and produce nothing. This breaks revenue down by source and campaign so your spend follows the money, not the volume.
Break down contacts, opportunities, pipeline, closed-won revenue, win rate, average deal size, sales-cycle length, and churn risk by original lead source and campaign. If spend data is available, calculate cost of acquisition, cost per opportunity, cost per closed-won customer, and ROI by source. If spend data is not available, identify which sources create real revenue versus sources that create volume that never converts. Recommend where to increase, hold, decrease, or stop spend, with the dollar logic for each call.
12. Find the margin you are giving away
This is the profit audit, not the pipeline audit. It finds the margin you are giving away in discounts nobody is tracking, and what moving to the team median would recover.
Analyze closed-won deals from the last 12 months for discounting, price reductions, custom pricing, concessions, or unusually low amounts compared with similar deals. Use list price, product pricing, line items, or quoted amount where available. Where it is not, compare against the average deal size by product, segment, company size, and owner. Break discounting down by owner, product, segment, deal size, lead source, and close month. Show the estimated revenue or margin given away, whether discounted deals closed faster, and whether they had higher churn or lower expansion where that data exists. Estimate how much margin could be recovered if discounting moved to the team median.
Turn every finding into one ranked plan
Twelve audits produce twelve tables. A CEO needs one. This last prompt consolidates everything into a single ranked revenue stack, sorted by dollars and effort, with an owner against each line.
Take the findings from every audit I ran and consolidate them into one master revenue stack. Build a ranked table with: source audit, the account, contact, or deal, the owner, the issue, the dollars affected, a recoverable-dollar estimate, the effort to capture (low, medium, or high), urgency, a confidence score, the recommended first action, and whether this is a data issue, sales issue, marketing issue, customer-success issue, or leadership issue. Then give me: 1. the top 10 quick wins this week, 2. the top 10 highest-dollar opportunities, 3. the top 10 process fixes, 4. the owners accountable, 5. total pipeline at risk, 6. estimated recoverable revenue, 7. the data gaps preventing stronger conclusions. Draft nothing, send nothing, export nothing, and change no records until I approve the list.
What to do with what it finds
Run the whole thing in an afternoon. The output is not a strategy deck. It is a list of specific, named actions with dollars attached, ready for you to approve and assign. Start with the quick wins the orchestrator surfaces this week, then work the highest-dollar opportunities, then fix the one or two process leaks that keep refilling the list.
The owner with the luxury materials business figured out the next move fast. Once a prompt earns its keep, you do not have to run it by hand again. You can turn it into an agent that runs on its own schedule and brings you the findings: how to turn a winning prompt into a standing agent. And if you want the daily, faster-cash version of this for a smaller business, the sister kit is twelve prompts to find, recover, and close revenue.
Common questions
What is the HubSpot Hidden Revenue Audit?
It is a read-only diagnostic you run on your own HubSpot with an AI agent. Twelve prompts surface revenue that already exists inside the CRM: stalled deals, unworked leads, slow follow-up, single-threaded deals, lapsed customers, churn risk, weak lead sources, and discounting that eats your margin. The agent finds the evidence, ranks the opportunities, and drafts the next move. You approve everything.
Will the agent change anything in HubSpot when I run these prompts?
No. Every prompt runs read-only. The agent does not send messages, enroll contacts, change deal stages, merge records, or export anything. It surfaces findings and prepares drafts. Nothing happens to your CRM until you decide it should. The preflight prompt locks that rule in before any audit runs.
Do I need Codex, or does this work with other AI agents?
It works with any agent you have safely connected to HubSpot. The owner in this story used Codex, OpenAI's agent. Claude Code works the same way. The prompts speak to the agent and to HubSpot, not to a specific brand, so paste them into whichever one you use.
What if my HubSpot data is incomplete or messy?
That is exactly why the audit starts with a preflight prompt. It forces the agent to tell you which fields exist, which are missing, and which it will treat as proxies, and to label every finding with a confidence score. If the data cannot support a conclusion, the agent says so instead of inventing one. Messy data also becomes its own finding worth fixing, as the owner in this story saw with 130 contacts missing emails.
Which prompt should I run first?
Run the preflight first, always. After that, prompts one through four find money fastest: deals rotting in the pipeline, dirty data, demand nobody worked, and slow follow-up. Finish with the orchestrator to turn everything into one ranked list.
The revenue was already in his HubSpot. The audit just made it impossible to ignore. Yours is in there too.
Want the agent reading your systems safely first? See what Codex is, fix the permission loop, then run the preflight prompt above before anything else.