BI metrics in the CRM
not in the dashboard next door
How a mid-sized building-materials manufacturer with around 30 sales reps pulled its revenue figures from Qlik straight into the HubSpot customer record. Plan versus actual, without switching tools.
The numbers lived in the wrong tool
The revenue figures lived in Qlik, while sales worked in HubSpot. Anyone who wanted to know how a customer stood against plan had to switch tools and piece the numbers together by hand. So hardly anyone did.
Qlik offers no ready-made way to show dashboards inside HubSpot. There is no integration you simply install. That ruled out the obvious fix: the information existed, just not where the work happened.
The numbers where the work happens
A pipeline from Qlik through n8n into HubSpot brings plan and actual values straight into the record. For the dashboards themselves, a HubSpot UI Extension embeds Qlik authenticated via JWT. So the number sits on the customer, not in a second tool. The data flow itself is a CRM integration built on n8n.
How it is put together
Pipeline Qlik → n8n → HubSpot
n8n pulls the plan and actual values from Qlik and writes them into the matching HubSpot record. The numbers land on the customer, not in an export.
Delta and attainment in the CRM
HubSpot calculated properties derive the delta and the attainment rate from plan and actual. The values are filterable and usable in reports without a detour.
Plan-YTD on a seasonal curve
An annual plan spread evenly across days produces useless targets in a seasonal business. The plan-YTD calculation therefore runs on a calibrated seasonal curve instead of a linear spread.
Qlik dashboard embedded via JWT
A HubSpot UI Extension embeds the Qlik dashboard authenticated. The signing runs through a serverless function on Vercel, so sales see the dashboard inside the customer record without logging in to Qlik separately.
The parts that carry it
Two things decide whether an integration like this is worth it: whether the plan values are right, and whether the dashboard shows up in the CRM without friction.
A seasonal curve, not a daily average
The plan-YTD calculation follows a calibrated curve. So the target in high summer differs from winter – and the delta is meaningful instead of distorted.
Calculated properties, not an export
Delta and attainment are computed in HubSpot and are real fields. That makes them filterable, groupable in lists, and usable in workflows.
JWT embed via Vercel
The UI Extension embeds Qlik authenticated. The signing runs through a serverless function on Vercel that issues the token per request.
No second login
Sales see the dashboard right in the customer record without logging in to Qlik separately. The hurdle of even opening the numbers disappears.
Before vs. after
Before – two tools
- Switch from HubSpot to Qlik for every number
- Piece plan vs. actual together by hand
- Dashboards that hardly anyone opens
- Targets spread linearly, useless in a seasonal business
After – one view
- Plan vs. actual sits in the customer record
- No tool switch, no manual assembly
- Values filterable and usable in workflows
- Targets follow seasonality instead of the calendar
Who this pays off for
Sales teams with BI in a side tool
Who keep their metrics in Qlik or another BI system but work in the CRM.
Companies with a seasonal business
Where a linear plan spread across the year leads to wrong targets.
HubSpot users who need numbers on the customer
Who want plan vs. actual right on the record and usable for lists, reports and workflows.
Questions & answers
Yes. A HubSpot UI Extension embeds the Qlik dashboard authenticated via JWT. The signing runs through a serverless function on Vercel. Sales see the dashboard inside the customer record without logging in to Qlik separately.
Through a pipeline from Qlik via n8n into HubSpot. It writes plan and actual values straight into the record, so the numbers sit on the customer instead of in an export.
In a seasonal business, a linear daily spread produces useless targets. That is why the plan-YTD calculation runs on a calibrated seasonal curve that reflects the expected course over the year.
Yes. Delta and attainment are computed via HubSpot calculated properties and exist as real fields, available for lists, reports and workflows.
No. The embed is authenticated via JWT and runs through the UI Extension in the CRM. A separate Qlik login is not needed.
The principle – bring values into the CRM through a pipeline and embed the dashboard authenticated – is not tied to Qlik. Whether it transfers depends on the embed and API options of the respective BI tool.
Numbers stuck in the wrong tool?
Let's look in a free call at how your numbers get to where your team actually works.
