Skip to main content
Abstract visualisation of a connected multi-agent system with flowing data streams and glowing nodes

AI & Automation

Multi-agent system for B2B sales — no data scientist needed.

Case 2 — collect, analyse and report data without a data scientist: HubSpot, Pipedrive, n8n, LangGraph as a coherent sales stack for SMEs.

Michael Schranz · AHEAD OF TIME17 min

What this is about

This is Case 2 of the four-part SME agent stack. After the entry-level mail inbox agent (Case 1), we step up one level of complexity here: multi-agent systems (MAS) for B2B sales data.

If you sell in B2B, you typically deal with five to fifteen different data sources:

  • CRM (HubSpot, Pipedrive, Salesforce, custom)
  • Marketing automation (HubSpot Marketing, Mailchimp, Active Campaign, Brevo)
  • LinkedIn Sales Navigator
  • Cold outreach tools (Apollo, Lemlist, Outreach)
  • Call tracking (Gong, Aircall, Dialpad)
  • Demos / onboarding tools (Calendly, Loom)
  • Accounting / invoicing (Bexio, Stripe, Banana)
  • Optionally: your own product telemetry

Per lead, per opportunity, per account, the truth is scattered somewhere between these systems. Sales managers spend a significant share of their time manually pulling together, interpreting and reporting these data — time they don't have for customer conversations.

A multi-agent system can automate collecting, analysing, interpreting and reporting. In this post you'll get the concrete setup — including architecture, tool choice and step-by-step implementation.

What a multi-agent system (MAS) is — short recap

A single agent does one specialised task. A MAS coordinates several specialised agents to solve a complex task.

Analogy: Imagine you built a team of 4 specialised interns:

  1. Collector — pulls data from 5 sources, normalises it into a unified format
  2. Analyst — computes KPIs, identifies anomalies, builds cohorts
  3. Interpreter — gives meaning to the numbers, identifies stories ("pipeline velocity in Q1 went up because lead source X grew strongly")
  4. Reporter — packages everything into a Slack post, an email or a Notion doc

That's exactly what we do here with agents — except no intern gets a salary and the system runs 24/7.

Architecture of the sales MAS — the four agents in detail

Agent 1 — Sales Data Collector

Responsibility: Pull data from all sources, normalise it, write it to a central storage.

Inputs:

  • HubSpot/Pipedrive/Salesforce API (deals, contacts, companies)
  • Marketing tool API (email engagements, form submissions)
  • LinkedIn Sales Navigator (via Apollo / Hunter / Phantombuster for enrichment)
  • Calendly / demo tracking
  • Optional: call tracking tools (Gong transcripts)

Outputs:

  • Structured sales data in a central DB (PostgreSQL, BigQuery, or Airtable for SMEs)
  • Normalised fields: lead source, stage, value, ownership, last-activity, engagement score

Frequency: Daily (or hourly for active teams)

Agent 2 — Sales Analyst

Responsibility: Compute KPIs, detect trends, flag anomalies.

Inputs:

  • Data from the central DB (delivered by the Collector)

Outputs:

  • Pipeline velocity (average days per stage)
  • Conversion rates per stage
  • Top 10 deals by value, by win probability, by risk
  • Anomaly list: "Deal X no movement in 14 days", "Lead Y suddenly opened 5 mails but didn't reply — hotter than expected"

Frequency: Daily

Agent 3 — Sales Interpreter

Responsibility: Give meaning to the numbers. Stories instead of tables.

Inputs:

  • Output from the Analyst
  • Historical data (comparison to last week / month / quarter)
  • External context (season, economic climate, competition)

Outputs (natural language):

  • "Pipeline value rose by 18% this week, driven by 3 new enterprise deals from LinkedIn campaign X"
  • "Conversion from discovery → demo dropped by 12% — mainly with leads that hadn't been in a demo but whose sales cycle is older than 30 days"
  • "Recommendation: actively close or pause 3 stale deals this week"

Frequency: Weekly (with daily alerts for critical events)

Agent 4 — Sales Reporter

Responsibility: Shape the output into the right form and push it to the right place.

Inputs:

  • Output from the Interpreter

Outputs:

  • Daily digest in a Slack channel (e.g. #sales-daily): "Here are the 3 most important sales signals this morning"
  • Weekly report as an email to the management and the sales lead
  • Monthly deep dive as a Notion doc or Google Slides
  • Ad-hoc alerts: "Heads up: deal X no movement in 5 days, value >50k CHF"

Frequency: Continuous (event-driven for alerts, schedule-driven for reports)

How the agents talk to each other

In modern frameworks (LangGraph, CrewAI) agents hand data and assignments to the next one — either linearly (Collector → Analyst → Interpreter → Reporter) or with feedback loops ("Reporter, ask the Interpreter whether you got the story right").

For SMEs I recommend linear initially. Feedback loops are more elegant but bring complexity that's unnecessary up front.

Build/Buy/Hybrid — what fits which SME?

Buy option — when HubSpot or Salesforce is your base anyway

HubSpot Breeze Agents 2026 includes:

  • Prospecting Agent: identifies qualified leads automatically
  • Content Agent: writes personalised outreach emails
  • Customer Agent: answers customer enquiries
  • Knowledge Agent: pulls knowledge-base answers
  • Reporting Agent: builds automatic reports and dashboards

Salesforce Agentforce 2026 is structured similarly (Service Agent, Sales Agent, Marketing Agent).

Pros:

  • Zero setup, productive from licence activation
  • Deeply integrated into your existing CRM data
  • Compliance handled by the vendor

Cons:

  • Vendor lock-in
  • High ongoing cost (HubSpot Breeze add-on from ~80 USD/user/month, Agentforce platform pricing variable from ~150 USD/user/month)
  • Limited custom logic for non-standard workflows

When it fits: Medium to larger SMEs (20+ sales staff) already deep in HubSpot/Salesforce, with no need for specific custom workflows.

Hybrid option — platform + custom n8n workflows

You use HubSpot/Salesforce as the core CRM and add n8n workflows for SME-specific use cases (e.g. integration with Swiss tools like Bexio).

Pros:

  • Best of both worlds: standard CRM features out-of-the-box, custom logic where needed
  • Scalable and cost-effective
  • Moderate learning curve for the team

Cons:

  • Slightly more setup effort up front

When it fits: Most Swiss SMEs. My default recommendation. Which variant fits your company is best clarified in a strategy workshop engagement before you move into implementation.

Build option — fully custom

You build your sales MAS from scratch: n8n + LangGraph + custom database. As soon as the requirements exceed what no-code covers, supported software development is the more reliable path.

Pros:

  • Maximum flexibility and data sovereignty
  • No ongoing licence costs for the agent layer
  • Fully tailored to your business model

Cons:

  • Highest setup effort
  • You need developers or power users

When it fits: Tech-savvy SMEs, or companies with very specific workflows no standard platform can model.

Step-by-step setup (hybrid variant with HubSpot + n8n)

Prerequisites

Before you start:

  • HubSpot (or comparable CRM) in use and cleanly structured
  • Data hygiene check: deduplicate, fill in missing fields
  • Clear pipeline stages and a definition of "Won / Lost / Stale"
  • n8n cloud or self-hosted setup (see Case 1 for the setup guide)
  • Claude / GPT API account
  • Slack or Teams for daily digests

Step 1 — Set up the Sales Data Collector

Goal: Every morning at 7:00, consolidate the most important sales data centrally.

In n8n:

[Cron trigger]: daily 07:00
  ↓
[HubSpot node]: fetch all open deals (stage != "Closed Won/Lost")
  Fields: deal_id, name, amount, stage, owner, last_activity_date,
          probability, deal_source
  ↓
[HubSpot node]: fetch all contacts with activity in the last 7 days
  Fields: contact_id, name, company, last_engagement,
          email_open_count, email_click_count
  ↓
[HubSpot node]: fetch all companies with open deals
  Fields: company_id, name, size, industry, country
  ↓
[Merge node]: combine into a structured dataset
  ↓
[Airtable / PostgreSQL node]: write snapshot to "daily_sales_snapshots"
  With timestamp for trend comparisons

Setup time: 3–4 hours for the first build, then runs automatically.

Step 2 — Set up the Sales Analyst

Goal: Every morning at 07:30, compute the most important KPIs and identify anomalies.

[Cron trigger]: daily 07:30
  ↓
[Airtable/Postgres node]: fetch today's snapshot + snapshot from 7 days ago
  ↓
[Function node (or Claude node)]: compute KPIs
  - Total pipeline value
  - Number of open deals per stage
  - Velocity per stage (average days)
  - Conversion rate per stage
  - Top 10 deals by value
  - Stale deals (last_activity_date > 14 days)
  - Hot leads (email_open_count > 5 in the last 7 days, no deal)
  ↓
[Airtable/Postgres node]: write KPIs to "daily_kpis"

For KPI calculation there are two variants:

  • Classical (deterministic): JavaScript function node in n8n that computes the KPIs. Faster, cheaper, deterministic.
  • LLM-based (probabilistic): Claude node receives the raw data + prompt "Compute the following KPIs ...". More flexible, but more expensive and not 100% deterministic.

Recommendation: Classical computation for KPIs, LLM layer only for anomaly detection and interpretation (see step 3).

Step 3 — Set up the Sales Interpreter

Goal: Every morning at 07:45, give the KPIs a story.

[Cron trigger]: daily 07:45
  ↓
[Postgres node]: fetch today's KPIs + trend data (last 30 days)
  ↓
[Claude node]:
  System prompt: "You are senior sales analyst at a Swiss B2B SME.
                  Analyse the data, identify the 3 most important
                  insights of the day, explain them briefly and give a
                  concrete recommendation per insight. Direct address,
                  Swiss tonality, no fluff."
  User prompt: "Today's KPIs: [JSON]. Comparison to last week: [JSON].
                Trend last 30 days: [JSON]."
  ↓
[Output]: structured daily insight report (3 stories + recommendations)
  ↓
[Postgres node]: write report to "daily_reports"

Important: In the system prompt, clearly define what insights are and aren't:

  • "Insights" = non-obvious findings that enable action
  • Not "Pipeline value is 1.2 million CHF" (that's a number)
  • But "Pipeline value is 18% higher this week because source X is suddenly delivering"

Step 4 — Set up the Sales Reporter

Goal: Daily digest in Slack, weekly report by email, monthly deep dive in Notion.

[Cron trigger]: daily 08:00 (daily digest)
  ↓
[Postgres node]: fetch today's report
  ↓
[Claude node]: shape into Slack Block Kit format
  System prompt: "Write a Slack daily digest, max 200 words,
                  with 3 sections: top insights, action recommendations,
                  KPI snapshot. With Slack mention for the responsible person."
  ↓
[Slack node]: post in #sales-daily

Same approach for weekly (every Monday 08:00) and monthly (1st of the month).

Step 5 — Set up alert workflows

Goal: For critical sales events, get immediate alerts (don't wait for the daily digest).

Example alerts:

[Cron trigger]: hourly
  ↓
[HubSpot node]: fetch deals with stage change in the last hour
  ↓
[Switch node]:
  - Deal moved to "Closed Won" → [Slack channel: 🎉 + mention account owner]
  - Deal moved to "Closed Lost" → [Slack channel: 📋 trigger loss analysis]
  - High-value deal idle 7+ days → [Slack DM to owner: "Check-in?"]
  - Lead engagement spike → [Slack channel: 🔥 hot lead]

Step 6 — Build a weekly approval meeting into the workflow

Important: Initially don't run everything fully automated. Instead:

  • Daily digest → posted to a Slack channel, sales lead reviews in the morning
  • Weekly report → one approval step (sales lead signs off) → then to management
  • Action recommendations → sales team chooses which to act on

After 2–3 months of successful experience, approval steps can be gradually reduced.

Value creation — what does it really deliver?

Realistic orders of magnitude for medium B2B SMEs with 5–15 sales staff — as a conservative guideline, not a promise from a specific engagement:

  • Time saved on sales reporting: 8–15 hours/week across the team
  • Hot-lead identification: 10–25% more identified hot leads that would otherwise have slipped through
  • Sales cycle reduction: 5–15% faster, because stale deals get addressed earlier
  • Forecast accuracy: measurably improves after 3–6 months of data history
  • Win-rate uplift: realistically +2–5 percentage points after 6–12 months

ROI example: For a 10-person sales team in Switzerland (average fully loaded rate ~150 CHF/h), 12 hours/week saved equate on paper to roughly 90,000 CHF/year — with a tool stack costing 6,000–15,000 CHF/year. The pure time calculation looks spectacular; after implementation effort, team adoption and only partial utilisation, the honest net ROI is closer to 1.5× to 3× over 12–18 months.

Data protection, security and data sovereignty for the sales MAS

Sales data is highly personal and therefore FADP/GDPR relevant: lead names, company data, contact history, ongoing commercial negotiations.

What goes to the LLM provider in a sales MAS?

  • CRM extracts (lead names, companies, deal status, notes) typically go to Claude/GPT for analysis and interpretation
  • Aggregated data (anonymised pipeline KPIs, trends) can be processed without personal reference — a good strategy for sensitive industries

Per data source a different sensitivity level applies — not every setup may ship every source to a US LLM:

Datenquelle
Sensitivität
Empfohlene Behandlung
CRM-StammdatenMittelPseudonymisierung vor LLM-Aufruf
Mail-LogsHochStrict-Pseudonymisierung + EU-Hosting
Phone-RecordingsSehr hochNiemals an US-LLMs — Azure CH oder Self-Hosted
Lead-FormsMittelStandard-Pseudonymisierung
Daten-Sensitivität nach Quelle im B2B-Sales-MAS

Vier Datenquellen-Typen im B2B-Sales-MAS-Kontext mit ihrer Sensitivitäts-Stufe und empfohlener Behandlung.

Specific risks of a sales MAS

  • Personal data to US LLM providers: without a DPA and without an EU/CH region this violates FADP/GDPR. Clarify before going live, no exceptions
  • Lead scoring discrimination: AI scores can unconsciously reproduce bias patterns (industry, gender, geography). Periodic bias audit of the scoring distribution
  • Hallucinations in sales reports: daily digests contain fabricated trends that end up in the sales team briefing. Weekly spot-check reviews
  • Approval bypass: outreach emails go out automatically with no human in the loop → embarrassing incidents at customer side. Keep the approval step for external actions strict for at least 3–6 months

CH-compliant setup recommendation for sales MAS

  • CRM: HubSpot/Pipedrive with an EU data centre enabled — or Swiss alternatives like Bexio (for SMEs with a local focus)
  • DB layer: PostgreSQL on Swiss cloud (Exoscale, Infomaniak)
  • LLM layer: Azure OpenAI Switzerland North for interpreted outputs; for pure computation steps use deterministic function nodes (no LLM)
  • Data minimisation: only send to the LLM what's really needed for interpretation. Pseudonymise names where possible
  • Audit logging: every agent action locally traceable

Common pitfalls

Pitfall 1 — Poor CRM data quality

If your CRM is full of duplicates, missing fields and inconsistent conventions, your MAS produces garbage insights. A data hygiene sprint before the MAS rollout is mandatory.

Pitfall 2 — Too many alerts

The sales team gets 47 alerts a day and ignores all of them by day 4. Alert hygiene: at most 3–5 alerts per person per day, clearly prioritised, with clear action expectations.

Pitfall 3 — Hallucinated insights

The Interpreter sometimes makes up trends that aren't in the data (see automation bias). Mitigation:

  • Make the prompt explicit: "Only identify insights that can be directly read from the data. If unsure, write 'Uncertain — further investigation needed'"
  • Weekly audit: cross-check 5 random insights
  • Cross-check with a second model (Claude + GPT-5) for critical reports

Pitfall 4 — Wrong incentives / authority bias

The sales team treats MAS outputs as absolute truth (see cognitive traps part 2, fallacy 13). Sales decisions are based on AI score rather than the customer conversation. Mitigation:

  • Clear communication: "AI score is a tool, not a decision"
  • Sales team training: how to read AI outputs critically

Pitfall 5 — FADP / GDPR

If your customer data goes to LLM providers, you need DPAs. Plus: for very sensitive data (regulated industries), use Azure OpenAI in an EU/CH region or self-hosted open-source models.

SME setup example: 8-person B2B SaaS SME in Bern

Hypothetical scenario — calculated through as a guideline, not from a specific engagement. The numbers are plausibly calibrated but illustrative:

Setup:

  • HubSpot Professional as CRM
  • n8n Cloud (Starter plan) as orchestration layer
  • Claude Sonnet 4.6 as foundation model
  • Slack as communication channel
  • PostgreSQL on Cloudflare (D1) as data layer

Cost:

  • HubSpot Professional: 800 USD/month (for 5 sales seats)
  • n8n Cloud Starter: 24 USD/month
  • Claude API: roughly 60 USD/month
  • Total: roughly 900 USD/month = 10,800 USD/year

Implementation effort:

  • 32 hours initially (4-day workshop + 1 week of iteration)
  • 4 hours/month of maintenance and optimisation

Projected result after 6 months (illustrative):

  • Sales reporting effort across the team reduced by 40–60%
  • 5–15% faster sales cycles
  • Win rate from 18% to around 21%
  • Net ROI: conservatively 1.5× to 3× over 12–18 months

Workshop / bootcamp: build the sales MAS together

This exact architecture — Collector, Analyst, Interpreter, Reporter — is what we build in a 3-day bootcamp or a 6-week guided coaching with your team:

  • Day 1: architecture workshop + tool choice
  • Day 2: Collector + Analyst setup (n8n)
  • Day 3: Interpreter + Reporter + alerts + Slack integration
  • Optional days 4–5: custom workflows for your SME specifics

Outcome: Your sales team ends up with a productively running MAS and the knowledge to develop it further on their own.

Book a sparring call if that sounds interesting — we'll discuss your setup in a 30-min call.

Q&A — the most common questions about the sales MAS

We don't have HubSpot, we have a custom-built CRM. Does this still work? Yes. n8n has a generic HTTP node that lets you call any API. Setup effort is marginally higher, but you get full flexibility.

Which foundation models work best for sales use cases? Claude Sonnet 4.6 for analysis and interpretation (very strong in reasoning), GPT-5 for outreach email drafts (slightly more natural writing style). A multi-provider setup is the best choice in 2026.

How long until the system is genuinely useful? First productive insights: 2–4 weeks. Fully integrated, trustworthy reports: 3–6 months. Maximum value: after 9–12 months of data history.

What about data hygiene? If our CRM is messy, does this still make sense? No. A data hygiene sprint before the MAS rollout. Otherwise the best system just produces garbage insights.

Can the agents also send emails / book meetings on their own? Yes — but for the first 6 months always with an approval step. Fully autonomous outreach emails without approval almost always lead to embarrassing incidents.

How do I prevent the sales team from rejecting the system ("not my tools")? Co-creation. Involve the sales team in design and setup. "Which 3 questions would you like answered immediately every morning?" — that becomes the daily digest. If the team helped shape it, they use the system.

What does it cost to run? For 5–10 sales seats, realistically 700–1,500 CHF/month all-in. The honest net ROI lies — after implementation and adoption effort — conservatively at 1.5× to 3× over 12–18 months.

Sources and further reading

  • HubSpot (2024). API Documentation.
  • Pipedrive (2024). API Documentation.
  • Salesforce (2024). REST API Documentation.
  • n8n (2024). Documentation.
  • Anthropic (2024). Claude API Documentation.
  • LangChain (2024). LangGraph Documentation.
  • Apollo.io (2024). API Documentation.

This list covers the primary sources for the concepts discussed in this article. It is not exhaustive but should provide an entry point for those interested in going deeper.

Link copied

Let's talk — no sales pressure.

Tell us about your project. We'll come back with a concrete answer, not a sales email.

Book a 30-min call

A no-obligation 30-min intro call — we listen, you decide.

Or write to us
Link copied