Price update from June 1, 2026
Lock in your current price for another year by switching to annual billing.
👉 Learn more: https://connectorly.io/june-2026-pricing-changes/

How to Build a HubSpot Sales Pipeline Dashboard in Power BI

How to build a HubSpot sales pipeline dashboard in Power BI using Connectorly

A HubSpot sales pipeline dashboard in Power BI gives sales managers and business leaders a clearer view of open opportunities, expected revenue, pipeline movement and deals requiring attention.

In this guide, we will build the dashboard using the Connectorly HubSpot and Power BI solution. Connectorly supplies the structured HubSpot data model, while Power BI provides the calculations, filters and interactive visuals.

The result will help users answer questions such as:

  • How much open pipeline do we currently have?

  • Which stages contain the most value?

  • Which deals are expected to close soon?

  • How is pipeline distributed between owners?

  • Which opportunities have become stale?

  • Are there enough qualified deals to support the sales target?

This is a practical supporting guide. For a broader explanation of connection methods, HubSpot objects, reporting models and KPIs, read our complete guide to HubSpot reporting in Power BI.

What Will the HubSpot Sales Pipeline Dashboard Include?

We will build a focused sales overview containing:

  • KPI cards for open pipeline, weighted pipeline, open deals and average deal value

  • Pipeline value by deal stage

  • Pipeline value by sales owner

  • Expected pipeline by close month

  • A table of deals requiring attention

  • Filters for date, pipeline and owner

The dashboard will use real fields from the Connectorly HubSpot data model. However, the exact property names and pipeline structure may differ between HubSpot accounts, especially where custom properties or several sales pipelines are used.

Before building the visuals, we will define the reporting logic and confirm which HubSpot records should count as open pipeline. This prevents an attractive dashboard from producing misleading results.

What HubSpot Data Do You Need?

A sales pipeline dashboard does not require every HubSpot table. Start with the objects needed for the questions the report must answer.

The core Connectorly tables are:

  • HubSpot Deals for opportunity value, dates, owners and deal properties

  • HubSpot Deal Pipelines for pipeline and stage labels

  • HubSpot Owners for sales-representative information

  • HubSpot Dates for monthly trends and time-based filtering

  • HubSpot Companies and Contacts when users need customer-level detail

Activity tables such as calls, meetings and tasks can be added later if the dashboard needs to identify opportunities without recent engagement.

Important deal fields

The exact field names depend on the HubSpot account and Connectorly model version. In most cases, the report will need:

  • Deal ID

  • Deal name

  • Pipeline and stage

  • Deal amount or reporting-currency amount

  • Deal owner

  • Created date

  • Expected close date

  • Closed date

  • Archived status

  • Closed-won or closed-lost status

  • Last activity or update date, where available

Use the reporting-currency amount when the model contains deals in several currencies and the dashboard needs one comparable total.

Connect the data before building the report

If the Connectorly connection is not already configured, follow the HubSpot and Power BI setup guide.

You can then connect Power BI Desktop to the prepared database using the instructions for bringing HubSpot data into Power BI.

Connectorly’s HubSpot All-in-One template provides an existing model and report foundation. You can customise that template or use the same prepared tables in a new Power BI file.

Step 1: Define What Counts as Open Pipeline

Before creating a measure, agree on which deals should count as open pipeline.

A typical definition includes deals that:

  • Are not archived

  • Belong to an included sales pipeline

  • Are currently in an open stage

  • Have a valid deal amount

  • Meet any organisation-specific exclusions

Do not identify open deals only by checking whether the stage name contains a particular word. Stage labels can be renamed and different pipelines may use different terminology.

Where possible, use the stage information in the Connectorly pipeline table to determine whether a stage is open, won or lost.

Decide how to treat missing amounts

A deal without an amount can still be a genuine open opportunity. However, it cannot contribute to pipeline value.

A useful approach is to:

  • Include the deal in the open-deal count

  • Exclude its blank amount from the pipeline-value measure

  • Display the number of open deals with missing amounts as a data-quality indicator

This keeps the opportunity visible without assigning it an invented value.

Confirm the reporting currency

If every deal uses the same currency, the standard deal amount may be sufficient.

For multi-currency reporting, use the Connectorly reporting-currency amount and display the selected reporting currency clearly. Do not add amounts from different currencies into one KPI unless they have been converted consistently.

Document exclusions

Record any rules that remove deals from the dashboard, such as:

  • Test or demonstration pipelines

  • Internal opportunities

  • Renewals reported elsewhere

  • Deals owned by inactive users

  • Particular business units or regions

Clear exclusions make it easier to explain why the Power BI total differs from a broader HubSpot view.

Step 2: Create the Core Pipeline Measures

The following measures use the reporting-currency fields in the Connectorly model. If every deal uses one currency, you can replace Amount (RC) with Amount.

These formulas assume that:

  • Archived and Is Closed are Boolean fields

  • The relationship between hubspot deals and hubspot deal_pipelines is active

  • Pipeline-stage probability is stored as a decimal, such as 0.25 for 25%

To extend this dashboard beyond pipeline monitoring, see our guide to HubSpot sales KPIs in Power BI. It includes additional DAX measures for won revenue, win rate, average deal value, sales-cycle length and pipeline coverage.

Open deals

Create this measure to count distinct, non-archived deals in open stages:

Open Deals =
CALCULATE(
    DISTINCTCOUNT('hubspot deals'[Deal ID]),
    'hubspot deals'[Archived] = FALSE(),
    'hubspot deals'[Is Closed] = FALSE()
)

Open pipeline value

This measure adds the reporting-currency value of open deals:

Open Pipeline (RC) =
CALCULATE(
    SUM('hubspot deals'[Amount (RC)]),
    'hubspot deals'[Archived] = FALSE(),
    'hubspot deals'[Is Closed] = FALSE()
)

Blank deal amounts do not add value, but the deals remain included in the open-deal count.

Average open deal value

Divide the open pipeline value by the number of open deals:

Average Open Deal Value (RC) =
DIVIDE(
    [Open Pipeline (RC)],
    [Open Deals]
)

Weighted open pipeline

Weighted pipeline applies the probability assigned to each deal’s current pipeline stage:

Weighted Open Pipeline (RC) =
SUMX(
    FILTER(
        'hubspot deals',
        'hubspot deals'[Archived] = FALSE()
            && 'hubspot deals'[Is Closed] = FALSE()
            && NOT ISBLANK('hubspot deals'[Amount (RC)])
    ),
    VAR StageProbability =
        RELATED('hubspot deal_pipelines'[Probability])
    RETURN
        'hubspot deals'[Amount (RC)]
            * COALESCE(StageProbability, 0)
)

Before using this measure, format the Probability column as a percentage and inspect several stages.

If the underlying values are stored as whole percentages, such as 25 rather than 0.25, divide StageProbability by 100 in the calculation.

Weighted pipeline is a directional estimate, not guaranteed revenue. Its usefulness depends on whether stage probabilities reflect the organisation’s actual sales process.

Format the measures

Apply the following Power BI formats:

  • Open Deals: Whole number

  • Open Pipeline (RC): Reporting currency

  • Average Open Deal Value (RC): Reporting currency

  • Weighted Open Pipeline (RC): Reporting currency

These four measures will become the KPI cards at the top of the dashboard.

Step 3: Add the Pipeline KPI Cards

Create four Card visuals across the top of the report page.

Assign one measure to each card:

  1. Open Pipeline (RC)

  2. Weighted Open Pipeline (RC)

  3. Open Deals

  4. Average Open Deal Value (RC)

Use short, business-friendly titles:

  • Open pipeline

  • Weighted pipeline

  • Open deals

  • Average deal value

Keep the card formatting consistent. Use the same font, background, border and spacing so that users can scan the measures quickly.

Avoid using strong red or green colours for these headline values. A large pipeline is not automatically positive if the deals are old, poorly qualified or concentrated in one stage.

Show when the data was last updated

The Connectorly deals table includes the Data current as of field. Create this measure:

Data Current As Of =
MAX('hubspot deals'[Data current as of])

You can also create a formatted label:

Data Current Label =
"Data current as of "
    & FORMAT(
        [Data Current As Of],
        "dd MMMM yyyy HH:mm"
    )

Display this value near the dashboard title using a Card visual.

A visible timestamp helps users distinguish a genuine pipeline change from a report that has not yet received the latest HubSpot data.

Test the cards

Before adding more visuals, check the cards with several filters:

  • Select one sales pipeline

  • Select one owner

  • Change the reporting period

  • Select an individual stage

Confirm that every KPI responds as expected. It is easier to correct the reporting logic now than after the page contains several charts.

Step 4: Show Pipeline Value by Deal Stage

Add a horizontal Bar chart to show where open pipeline value is concentrated.

Configure the visual as follows:

  • Y-axis: hubspot deal_pipelines[Pipeline Stage Label]

  • X-axis: [Open Pipeline (RC)]

  • Tooltips: [Open Deals], [Weighted Open Pipeline (RC)] and [Average Open Deal Value (RC)]

Use the title:

Open Pipeline by Deal Stage

The measure already excludes closed deals, so closed-won and closed-lost stages should not contribute to the chart.

Sort stages in pipeline order

Alphabetical sorting makes a sales pipeline difficult to understand.

Select the Pipeline Stage Label column and use:

Column tools → Sort by column → Pipeline Stage Sort Order

The stages should then follow the order defined in HubSpot.

If the model contains several pipelines, add Pipeline Label as a page filter or slicer. Different pipelines may use different stages and sorting structures, so displaying all of them together can create a misleading sequence.

Format the visual

For a clean stage chart:

  • Use one consistent accent colour

  • Turn on data labels

  • Format values using the reporting currency

  • Avoid assigning an unrelated colour to every stage

  • Keep long stage labels readable

  • Remove unnecessary gridlines and borders

The chart should make it easy to identify stages containing a disproportionate amount of open value.

However, a large stage is not automatically a problem. Review it alongside the number of deals, stage probability and time spent in the stage.

Step 5: Compare Open Pipeline by Owner

Add a second horizontal Bar chart to compare pipeline responsibility across the sales team.

Configure it as follows:

  • Y-axis: hubspot deals[Owner Name]

  • X-axis: [Open Pipeline (RC)]

  • Tooltips: [Open Deals], [Weighted Open Pipeline (RC)] and [Average Open Deal Value (RC)]

Use the title:

Open Pipeline by Owner

Sort the chart by open pipeline value in descending order.

This visual helps managers identify:

  • Owners carrying the largest pipeline

  • Representatives with relatively few opportunities

  • Concentration of value among a small number of owners

  • Differences between total and weighted pipeline

  • Owners with unusually large average deal values

Pipeline value should not be treated as a performance ranking on its own. One owner may handle a smaller number of strategic opportunities, while another manages a larger volume of lower-value deals.

Handle deals without an owner

Create a data-quality measure for open deals without an assigned owner:

Unassigned Open Deals =
CALCULATE(
    [Open Deals],
    FILTER(
        'hubspot deals',
        ISBLANK('hubspot deals'[Owner ID])
    )
)

Add this measure to a tooltip, small card or data-quality panel.

Unassigned deals are easy to overlook in an owner chart because their label may appear blank. Keeping them visible helps prevent genuine opportunities from being excluded from sales follow-up.

Step 6: Show Expected Pipeline by Close Month

A pipeline dashboard should show not only how much value is open, but also when that value is expected to close.

Create this calculated column in hubspot deals:

Forecast Close Month =
VAR CloseDate =
    'hubspot deals'[Forecast Close Date]
RETURN
    IF(
        NOT ISBLANK(CloseDate),
        DATE(
            YEAR(CloseDate),
            MONTH(CloseDate),
            1
        )
    )

Format the column as MMM yyyy. Because the underlying value is a date, Power BI can sort it chronologically.

Create the visual

Add a Line and clustered column chart:

  • X-axis: hubspot deals[Forecast Close Month]

  • Column Y-axis: [Open Pipeline (RC)]

  • Line Y-axis: [Weighted Open Pipeline (RC)]

Use the title:

Expected Pipeline by Close Month

The columns show the full open pipeline, while the line provides the probability-weighted view.

Keep the axis at month-and-year level. Using month names without the year can combine different reporting years and produce a misleading result.

Identify missing and overdue close dates

Create this measure for open deals without a forecast close date:

Open Deals Missing Close Date =
CALCULATE(
    [Open Deals],
    FILTER(
        'hubspot deals',
        ISBLANK('hubspot deals'[Forecast Close Date])
    )
)

Create another measure for deals whose forecast close date has already passed:

Open Deals Past Forecast Close Date =
CALCULATE(
    [Open Deals],
    FILTER(
        'hubspot deals',
        NOT ISBLANK('hubspot deals'[Forecast Close Date])
            && 'hubspot deals'[Forecast Close Date] < TODAY()
    )
)

Display these measures as small cards or in a data-quality panel.

Missing and overdue dates reduce the usefulness of a pipeline forecast. Making them visible encourages users to maintain the underlying HubSpot records.

Step 7: Create a Deals Requiring Attention Table

Summary charts show the scale of the pipeline. A detail table helps users act on individual opportunities.

Create this calculated column in hubspot deals:

Primary Attention Reason =
VAR DealIsOpen =
    'hubspot deals'[Archived] = FALSE()
        && 'hubspot deals'[Is Closed] = FALSE()
VAR DaysSinceUpdate =
    DATEDIFF(
        'hubspot deals'[Updated Date],
        TODAY(),
        DAY
    )
RETURN
    IF(
        NOT DealIsOpen,
        BLANK(),
        SWITCH(
            TRUE(),
            ISBLANK('hubspot deals'[Owner ID]), "Missing owner",
            ISBLANK('hubspot deals'[Amount (RC)]), "Missing amount",
            ISBLANK('hubspot deals'[Forecast Close Date]), "Missing close date",
            'hubspot deals'[Forecast Close Date] < TODAY(), "Close date passed",
            ISBLANK('hubspot deals'[Updated Date]), "Missing update date",
            DaysSinceUpdate > 30, "No recent update",
            BLANK()
        )
    )

The example uses 30 days to identify a deal without a recent update. Adjust this threshold to reflect the organisation’s normal sales cycle.

Build the table

Add a Table visual containing:

  • Deal Name

  • Company Name

  • Owner Name

  • Pipeline Stage Label

  • Amount (RC)

  • Forecast Close Date

  • Updated Date

  • Next Step

  • Primary Attention Reason

  • Internal URL

Apply a visual-level filter so that Primary Attention Reason is not blank.

Use the title:

Deals Requiring Attention

Add a link back to HubSpot

Select the Internal URL field and set its Data category to Web URL.

In the table formatting options, display it as a link icon if available. Users can then open the relevant HubSpot record directly from Power BI.

Format the exceptions

Use restrained conditional formatting for Primary Attention Reason.

For example:

  • Red for a passed close date

  • Orange for a missing owner, amount or close date

  • Yellow for no recent update

The table should prioritise action rather than decoration. Sort it by amount, expected close date or urgency depending on the sales team’s workflow.

Step 8: Add Filters and Arrange the Dashboard

Add three primary slicers:

  • hubspot deals[Forecast Close Month]

  • hubspot deals[Pipeline Label]

  • hubspot deals[Owner Name]

You may also add Pipeline Stage Label when users need to focus on a particular part of the sales process.

Avoid placing too many slicers on the page. Additional fields can be moved into the Power BI filter pane or added to a separate detail page.

Recommended page layout

Arrange the report in this order:

  1. Title and data timestamp at the top

  2. Four KPI cards beneath the title

  3. Open Pipeline by Deal Stage on the left

  4. Expected Pipeline by Close Month on the right

  5. Open Pipeline by Owner beneath the stage chart

  6. Deals Requiring Attention beneath the trend chart

  7. Date, pipeline and owner slicers near the top-right corner

This layout provides a clear reading path from the overall pipeline position to trends, ownership and individual records.

Keep the design consistent

Use a limited colour palette and reserve warning colours for genuine exceptions.

Apply consistent:

  • Card sizes

  • Visual titles

  • Font sizes

  • Currency formats

  • Backgrounds and borders

  • Spacing between visuals

Where possible, use the same stage, pipeline and owner terminology that users already see in HubSpot.

A familiar reporting language makes the dashboard easier to adopt and reduces confusion during validation.

Example HubSpot sales dashboard layout with pipeline KPIs, deal trends, owner performance and deals requiring attention.

Step 9: Validate the Dashboard Against HubSpot

Do not publish the dashboard until the principal measures have been checked against HubSpot.

Start with a small, controlled comparison:

  1. Select one pipeline.

  2. Select one owner.

  3. Use a short forecast-close period.

  4. Compare the open deals in HubSpot with the Power BI detail table.

  5. Trace several individual Deal IDs through both systems.

  6. Confirm the amount, stage, owner and forecast close date.

  7. Compare the resulting totals.

If the figures differ, check:

  • Whether Power BI has received the latest Connectorly data

  • Whether archived deals are excluded

  • Whether both reports use the same pipeline

  • Whether the same stages count as open

  • Whether HubSpot and Power BI use the same amount field

  • Whether reporting-currency values are being compared with original-currency values

  • Whether blank amounts or close dates are handled differently

  • Whether filters from another visual or page remain active

  • Whether a relationship is duplicating or excluding deals

Test the stage probabilities

Review several pipeline stages and confirm that the Probability values match the intended HubSpot configuration.

Then manually calculate the weighted value of a small group of deals:

Deal amount × stage probability

Compare the result with the Power BI weighted-pipeline measure.

Record the agreed definitions

Document:

  • What counts as an open deal

  • Which pipelines are included

  • Which amount field is used

  • How stage probability is applied

  • Which date controls the trend

  • How missing values are treated

  • Which currency the report displays

Validation is not only about making two totals agree. It should establish that every important figure has a clear, repeatable and explainable definition.

Step 10: Publish and Maintain the Dashboard

Once the figures have been validated, publish the report to the appropriate Power BI workspace.

Before sharing it, confirm:

  • The Connectorly data source credentials are configured

  • The dataset refresh completes successfully

  • Report users have the correct workspace or app access

  • Currency formats and time zones are correct

  • The data timestamp appears on the page

  • HubSpot record links open as expected

  • Sensitive deal information is restricted appropriately

Use row-level security when different teams, regions or business units should see different records.

Review changes to the HubSpot process

The dashboard depends on the structure and meaning of the HubSpot sales process.

Review the report whenever users:

  • Add or remove a pipeline

  • Rename or reorder stages

  • Change stage probabilities

  • Introduce a new reporting currency

  • Replace an important custom property

  • Change how deal owners or teams are assigned

  • Revise the definition of forecast or pipeline

A scheduled refresh keeps the data current, but it does not automatically confirm that the business meaning remains correct.

Monitor data quality

Keep the exception measures visible and review them regularly:

  • Unassigned open deals

  • Deals without an amount

  • Deals without a forecast close date

  • Deals with a close date in the past

  • Deals without a recent update

These indicators help the Power BI dashboard improve the underlying HubSpot process rather than simply display it.

Frequently Asked Questions

Can Power BI report on a HubSpot sales pipeline?

Yes. Power BI can report on HubSpot deals, pipelines, stages, owners, companies, contacts and activities when that data is available through a suitable connection. Connectorly supplies these objects in a structured reporting database for Power BI.

What should count as open pipeline?

Open pipeline normally includes non-archived deals in stages that HubSpot identifies as open. The organisation should also document which pipelines, currencies and deal types are included.

How is weighted pipeline calculated?

Weighted pipeline multiplies each open deal’s amount by the probability assigned to its current pipeline stage. For example, a £10,000 deal in a stage with a 40% probability contributes £4,000 to weighted pipeline.

Why does the Power BI pipeline total differ from HubSpot?

Common causes include refresh timing, archived records, different pipeline filters, blank amounts, currency conversion, stage definitions and using different amount or date fields. Compare a small group of Deal IDs using identical filters before investigating only the overall total.

Can users open a HubSpot deal from Power BI?

Yes. The Connectorly deals table includes an Internal URL field. Set its Power BI Data category to Web URL and add it to the detail table so users can open the corresponding HubSpot record.

Do I need to use the Connectorly template?

No. You can build a new Power BI report using the prepared Connectorly tables. However, the HubSpot All-in-One template provides an existing model, relationships and report foundation that can reduce setup time.

Can the dashboard include sales activities?

Yes. Calls, meetings and tasks can be added to identify deals without recent engagement and compare activity with pipeline progression. Add these tables only when the dashboard has a clear activity-reporting requirement.

Final Thoughts

A useful HubSpot sales pipeline dashboard does more than display one large pipeline total.

It should explain where the value sits, when deals are expected to close, who owns the opportunities and which records require attention. It should also make missing amounts, overdue close dates and stale deals visible.

Begin with clear definitions, create a small set of explicit measures and validate them against individual HubSpot records. Once the foundation is dependable, you can extend the report with activities, conversion analysis, sales targets and executive forecasting.

Pipeline reporting shows the opportunities currently moving through your sales process, while forecasting estimates how much of that pipeline may convert into revenue. For the next step, see our practical guide to building a HubSpot sales forecast dashboard in Power BI, including probability-weighted forecasts, expected close dates and sales targets.

Connectorly provides the structured HubSpot data model, while Power BI supplies the calculations and interactive reporting experience.

For additional guidance: