The short answer

Use Datplan to authorise and pull the supported HubSpot data, prepare Companies, Contacts, Deals and Activities as separate reporting grains, and export stable files. Power BI connects to those files rather than hand-coded API pages. A Power BI Service refresh still needs a separate route to the files.

Choose the CRM grain

Use Deals for pipeline amount, stage, owner, won or lost status and sales-cycle reporting. Use Activities for calls, emails, meetings, tasks, notes and engagement timing. Use Companies for account-level counts and attributes. Use Contacts for person-level lifecycle and activity summaries.

Keeping those grains separate prevents a common error: one deal joined to many activities can repeat the deal amount on every activity row.

Build the HubSpot-to-Power BI workflow

  1. Authorise the intended HubSpot portal and verify the connection.
  2. Run a Datplan sync and review endpoint status, downloaded volume and notes.
  3. Choose Basic reporting tables unless you need the full Advanced transformed set.
  4. Export to one stable folder for that workspace and connection.
  5. Load the prepared files in Power BI and follow the validated relationship guidance.
  6. Create measures at the correct grain and cross-check them with detailed tables.

Why Power BI Desktop and Power BI Service are different

Power BI Desktop can read a local file available to the signed-in Windows user. Power BI Service runs elsewhere and cannot automatically see that path. A published report needs a Microsoft-supported file-access or gateway setup controlled by the user’s organisation.

Datplan’s job is to refresh the local reporting files. It does not configure Power BI Service, store HubSpot data for that service or guarantee a cloud refresh.

Use a three-stage refresh check

  1. HubSpot to Datplan: did the supported endpoints complete and contain the expected period?
  2. Datplan to files: were the correct folder and stable files updated?
  3. Files to Power BI: did the query and any service gateway read the new timestamp and rows?

Avoid common HubSpot modelling mistakes

  • Do not treat deal amount as accounting revenue.
  • Do not use Activities to total pipeline value.
  • Do not join every association without checking many-to-many row multiplication.
  • Do not assume a completed Datplan schedule proves a later Power BI Service refresh succeeded.

Frequently asked questions

Which HubSpot table should I use for pipeline value?

Use the Deals grain, with the appropriate amount, currency, stage and open or closed filter. Activities represent sales work and should not be summed as pipeline.

Why can a HubSpot Power BI query fail in the service?

A custom or local file query may rely on dynamic URLs, credentials or files that Power BI Service cannot reach. Datplan avoids hand-coded supported-source pagination, but the service still needs its own supported access route to Datplan’s exported files.

Can I schedule Datplan’s HubSpot export?

Yes on supported plans. The Windows machine, app execution mode, provider connection, allowances and export folder must all be available.