Meta Ads and Google Ads report a cost per lead. GoHighLevel, HubSpot and Salesforce report which of those leads turned into deals and what they were worth. Neither side shows what a lead cost once it closed, so working out which channel produces revenue rather than lead volume has meant exporting from both and joining them by hand.
I spend most of my time on SEO, but I want to see how every channel in the business performs, and closed deals are the clearest measure of that. So I connected the CRM and the ad accounts to Windsor.ai and added Windsor to Claude, which I already use for search work. Now I ask which source the closed deals came from, how much they were worth and what stage the open ones are at. ChatGPT, Gemini and Perplexity work the same way.
🚀 Ready to see it live? Try Windsor.ai free, free forever plan, no credit card.
Already using Claude? Add the Windsor.ai for CRM connector directly from the Claude directory. On ChatGPT, Gemini or Perplexity, add Windsor the same way from that assistant’s own connector or app directory.
Connecting your CRM data to your AI assistant with Windsor: 2 steps
Windsor.ai is a single connector that reads from 350+ data sources, including GoHighLevel, HubSpot, Salesforce and every major ad platform, and sends it wherever you work. Setup is two steps: connect your sources in Windsor, then add Windsor to your assistant.
HubSpot also ships its own official MCP server, built for working inside HubSpot itself: creating, updating and searching records. Windsor.ai does a different job. It blends your CRM alongside ad spend and 350+ other sources in the same conversation, for the revenue question rather than record management.
Before you start
- A GoHighLevel, HubSpot or Salesforce account
- A Windsor.ai account (free for the first 30 days to test; paid plans start at $19/month for 3 sources, $99/month for 7)
- A Claude, ChatGPT, Gemini or Perplexity account
Step 1: Connect your CRM and ad accounts to Windsor
Go to onboard.windsor.ai/app/gohighlevel and sign in to authorize your account. Then add whatever else feeds the revenue picture:
- HubSpot or Salesforce, if you run either alongside GoHighLevel
- Meta Ads and Google Ads, for the spend side of the picture
The free plan lets you test multiple sources for the first 30 days, then drops to a single source with no credit card required. Keeping your CRMs and ad accounts connected long-term takes a paid plan: $19/month for 3 sources, $99/month for 7, with pipeline history going back further.
Step 2: Add Windsor to your AI assistant
- Claude: Customize → Connectors → search Windsor → Add
- ChatGPT: install Windsor’s native app from the ChatGPT apps directory
- Gemini and Perplexity: add Windsor from that assistant’s own connector or app directory
Sign in to your Windsor.ai account when prompted, then confirm it works with a simple question: “how many new deals did we create last week.”
The numbers I track once it’s connected
| Metric | What it tells you |
|---|---|
| New leads / contacts (GoHighLevel, HubSpot, Salesforce) | Volume entering the pipeline |
| Deal stage and pipeline value | How much of that volume is qualified |
| Closed-won revenue | What converted |
| Cost per lead, by ad platform | What it cost to generate that volume |
| Lead-to-close rate, by source | Which channel’s leads close |
The reports CRM teams run most
These are the questions CRM teams ask Windsor most often.
Lead source and revenue
- Which contact source brought in the most new leads this month, and how are they tagged?
- Which opportunity source is producing the highest-value deals, and what stage are they at?
- Which lead source has closed the most deals, and what’s the total deal value by source?
Pipeline
- Show me our pipeline stages and how many opportunities are sitting in each one.
- Pull this week’s new contacts with their source and tags.
Bonus: analyze CRM alongside your full stack
The same Windsor install covers every connected source, so one question can join the CRM to the ad accounts that fed it. Three I use most:
- “Which Google Ads campaigns produced deals that closed in the CRM, versus campaigns that only generated leads?”
- “Compare cost per lead across Meta Ads and Google Ads against CRM win rate.”
- “Did the campaign we launched in March produce any closed-won revenue yet?”
Conclusion
With the CRM and the ad accounts connected, the revenue-by-channel question gets answered in the chat, with cost per lead and closed-won value in the same reply. A good first question after setup is which lead source closed the most deals this quarter, because it shows straight away whether the join between spend and pipeline is working.
Connectors mentioned in this guide
🚀 Ready to get started? Try Windsor.ai free. Free forever plan, no credit card. Paid plans from $19/month.
FAQs
Does Windsor.ai create or update records in my CRM?
No. Windsor reads and analyzes your CRM data so you can ask questions about it. It doesn’t create, update or delete contacts, deals or records in GoHighLevel, HubSpot or Salesforce.
Which CRM metrics can I ask about?
Leads, contacts, deal stage, pipeline value, closed-won revenue and lead-to-close rate from GoHighLevel, HubSpot or Salesforce, alongside spend and cost-per-lead fields from every connected ad platform.
Can I connect more than one CRM?
Yes. GoHighLevel, HubSpot and Salesforce can all be connected at once, so one conversation can pull from any of them.
Is the data live?
Yes. Once a source is connected, Claude (or ChatGPT, Gemini, Perplexity) queries it directly, no manual export or CSV step.


