AI Health Score Calculator
ProCreates a composite health score from multiple data sources: product usage data from Mixpanel, support ticket frequency and severity from Zendesk, email engagement metrics, NPS/CSAT scores from Salesforce, and stakeholder activity signals. Runs daily to update each account's health score and posts a summary to Slack with accounts that changed status.
AI Health Score Calculator
Overview
This n8n workflow creates a composite customer health score by aggregating signals from multiple data sources. It runs daily, pulling usage data from Mixpanel, support tickets from Zendesk, engagement metrics and NPS/CSAT scores from Salesforce, and stakeholder activity data. The weighted score is written back to your CRM and alerts are sent to Slack when accounts drop below threshold.
Prerequisites
Before setting up this template, you'll need:
- n8n instance (self-hosted or n8n Cloud)
- Salesforce โ OAuth2 API credentials with read/write access to accounts
- Zendesk โ API token with ticket search permissions
- Mixpanel โ Service account or API secret for engagement data
- Slack workspace โ Bot token with permission to post to channels
Setup Guide
Step 1: Import the Workflow
1. Open your n8n instance
2. Go to Workflows โ Import from File
3. Upload the workflow.json file
4. The workflow will appear in your workflow list
Step 2: Configure Credentials
1. Salesforce: Go to n8n Settings โ Credentials โ Add Salesforce OAuth2 credentials
2. Zendesk: Add your Zendesk API credentials (subdomain + API token)
3. Mixpanel: Add an HTTP Header Auth credential with your Mixpanel API secret
4. Slack: Create a Slack app, add bot token, and configure the Slack credential in n8n
Step 3: Update API Endpoints
Open each HTTP Request node and replace the placeholder URLs:
Fetch Active Accountsโ Your Salesforce account list endpointFetch Usage from Mixpanelโ Your Mixpanel engage/export endpointFetch Support Ticketsโ Your Zendesk search API endpointFetch Engagement & NPSโ Your CRM engagement data endpointUpdate CRM Health Scoreโ Your CRM account update endpoint
Step 4: Customize Health Score Weights
Open the Calculate Health Score code node and adjust the weights object:
usage(default: 0.30) โ Product usage trendssupport(default: 0.20) โ Support ticket frequency/severityengagement(default: 0.20) โ Email opens, meeting attendancenps(default: 0.15) โ NPS/CSAT survey scoresstakeholder(default: 0.15) โ Champion/exec activity
Step 5: Configure Alert Threshold
Update the Score Below Threshold? node to set your alert threshold (default: 60).
Step 6: Set Slack Channel
Update the Send Health Alert to Slack node with your preferred channel (default: #cs-health-scores).
Step 7: Activate
Toggle the workflow to Active and monitor the first run.
Configuration Options
| Setting | Default | Description |
| Schedule | Daily (24h) | How often health scores are recalculated |
| Alert threshold | 60 | Score below this triggers a Slack alert |
| Usage weight | 30% | Weight of product usage in composite score |
| Support weight | 20% | Weight of support ticket signals |
| Engagement weight | 20% | Weight of email/meeting engagement |
| NPS weight | 15% | Weight of NPS/CSAT scores |
| Stakeholder weight | 15% | Weight of stakeholder activity |
How to Customize
Add data sources
Add more HTTP Request nodes before the Merge node. Examples:
- Pendo/Amplitude โ Feature adoption data
- Gainsight โ Existing health indicators
- Calendar API โ Meeting frequency with customer
Customize score thresholds
Edit the status thresholds in the Calculate Health Score node:
- Critical: below 40
- At Risk: 40-59
- Needs Attention: 60-74
- Healthy: 75+
Add email digest
Add an email node after the filter to send daily health score summaries to CS leadership.
Historical tracking
Add a node to write scores to a database or spreadsheet for trend analysis over time.
Troubleshooting
- No data from Mixpanel โ Verify your API secret and that account IDs match between systems
- Merge node errors โ Ensure all three data sources return the same
account_idfield - Scores all showing 100 โ Check that your API endpoints return actual metric data, not empty objects
- Slack not posting โ Verify bot token permissions and channel name (include the #)
Template Details
Category
Health Monitoring
Platform
n8n
Difficulty
Advanced
Setup Time
45 minutes
Version
1.0.0
Last Updated
2026-03-31
Integrations
$29/mo โ coming soon
You Might Also Like
Customer Feedback Aggregator
Collects and analyzes feedback from NPS surveys, support tickets, and reviews into a unified sentiment dashboard.
Expansion Signal Detector
Identifies accounts showing expansion readiness based on usage patterns, feature adoption, and engagement spikes.
QBR Prep Agent
Automatically generates QBR briefing documents by pulling account data, usage metrics, and conversation summaries.