Skip to content
Analytics ⇄ Data warehouse

Microsoft Power Bi to Snowflake integration — real-time data sync

Keep Microsoft Power Bi and Snowflake in sync without custom scripts. Cut weeks of integration work, eliminate silent data drift, and give your team a single, reliable source of truth.

  • SOC 2 and 6 other compliance frameworks
  • POC with real engineers in minutes

Adopted by fast-scaling companies moving mission-critical data in real time

Case study
Migrated from MuleSoft
Case study
Migrated from Celigo
Migrated from Heroku Connect
Migrated from Matillion
Case study
Migrated from Fivetran
Case study
Migrated from Celigo
Why teams connect Microsoft Power Bi and Snowflake

Flow Microsoft Power Bi data into Snowflake in real time — no exports, no schedulers, no custom scripts.

Microsoft Power Bi is a read-only source: Stacksync reads its data in real time and delivers it into Snowflake, so Snowflake always reflects the current state of Microsoft Power Bi — without exports, scripts, or schedulers.

Microsoft Power Bi is where teams explore, visualize, and report; Snowflake is the store of record that holds the raw tables and full history behind those views. The two overlap wherever the same events, users, and metrics matter to both, and when the bridge between them is a nightly export or a hand-built extract, dashboards lag the warehouse and analysts spend the morning arguing over whose number is right.

Common use cases

  • 01 Pull Dataflow and Datasource definitions to document lineage between Power BI and its upstream warehouses in a governance database.
  • 02 Load dataset Refresh History into an operational database to alert on-call teams when scheduled refreshes fail or run long.
  • 03 Push product usage aggregates from Snowflake into sales and success tools for account prioritization
  • 04 Feed finance reconciliation models from ERP data landed in Snowflake on a continuous basis

Common sync patterns

Shared user and account keys

Users and accounts tracked in Microsoft Power Bi line up with the customer or user rows in Snowflake on a stable key, so both sides count the same population.

Corrections propagate instead of reloading

When a record is fixed or backfilled on one side, the change reaches the other without a full reload, keeping history consistent across both.

One number both sides agree on

Metrics and aggregates stay aligned between the two systems, so a figure shown in Microsoft Power Bi matches the Snowflake table it was built from instead of drifting between refreshes.

What you can sync between Microsoft Power Bi and Snowflake

Representative objects on each side — any object or custom field can map to any target. Schemas are auto-detected; types are converted between the two systems.

Microsoft Power Bi objects Snowflake objects How this pairing syncs
Datasets (Semantic Models) Tabular models behind reports; their rows are read with DAX via POST datasets/{id}/executeQueries, and datasource and refresh metadata via REST list endpoints. Materialized Views Precomputed results synced outward for low-latency reads. Datasets (Semantic Models) is specific to Microsoft Power Bi and Materialized Views to Snowflake — each maps to any object or custom field on the other side.
Reports Report definitions and metadata read via GET /reports and per-workspace GET /groups/{id}/reports; enumerated to mirror the content inventory into a catalog. Streams Row-level change records on a table, consumed to process deltas instead of full scans. Reports is specific to Microsoft Power Bi and Streams to Snowflake — each maps to any object or custom field on the other side.
Dashboards and Tiles Dashboards and their pinned tiles read via GET /dashboards and /dashboards/{id}/tiles; inventoried to map dashboard content back to its source datasets. Stages File staging areas used for bulk loads into synced tables. Dashboards and Tiles is specific to Microsoft Power Bi and Stages to Snowflake — each maps to any object or custom field on the other side.
Dataflows Power Query ETL definitions read via GET /groups/{id}/dataflows; used to document lineage from upstream sources into datasets. Tasks Scheduled SQL used to transform synced data after it lands. Dataflows is specific to Microsoft Power Bi and Tasks to Snowflake — each maps to any object or custom field on the other side.
Datasources and Gateways The connections behind datasets and dataflows and the on-premises gateways serving them, read via REST for lineage and dependency mapping. VARIANT Columns Semi-structured JSON payloads stored alongside relational columns. Datasources and Gateways is specific to Microsoft Power Bi and VARIANT Columns to Snowflake — each maps to any object or custom field on the other side.
Refresh History Dataset refresh runs read via GET /datasets/{id}/refreshes, including status, type, and timing, to alert on failed or slow scheduled refreshes. Virtual Warehouses The compute a sync's queries run on, sized independently of storage. Refresh History is specific to Microsoft Power Bi and Virtual Warehouses to Snowflake — each maps to any object or custom field on the other side.

How changes propagate between Microsoft Power Bi and Snowflake

Each direction of the sync is driven by what the source system can signal and what the destination accepts — detection, delivery, and expected latency below.

Microsoft Power Bi Snowflake Interval-based propagation

DetectionStacksync polls Microsoft Power Bi for changes on an incremental schedule, reading only records changed since the previous pass. Pull-based: no webhooks or change-data-capture.

DeliveryEach detected change is applied to Snowflake as a row-level write, with types converted between the two schemas.

Snowflake Microsoft Power Bi Sub-second propagation

DetectionChanges in Snowflake are captured at the source via change data capture — no polling loop against its API. The setup script grants "create stream" on synced schemas (Snowflake streams), but the docs do not name the change-capture mechanism.

DeliveryMicrosoft Power Bi does not accept inbound record writes, so this direction carries requests rather than records: Microsoft Power Bi's output flows back as field updates on the originating Snowflake records.

Rate-limit considerations

  • Microsoft Power Bi: Endpoints throttle per user and per app and return HTTP 429 with a Retry-After header. Execute Queries allows up to 120 requests per minute per user and caps a query at 100,000 rows (or 1,000,000 values) and 15 MB; admin scanner metadata APIs are limited to about 500 requests per hour with 16 concurrent.
  • Snowflake: No conventional API rate limits; cost and throughput are governed by virtual warehouse size and running time.
What ships with Microsoft Power Bi ⇄ Snowflake

Connect Microsoft Power Bi and Snowflake for flexible, real-time data sync.

Real-time sync, workflow automation, event queues, EDI, and monitoring, for every Microsoft Power Bi–Snowflake connection.

Real-time

Real-time sync

Changes in Microsoft Power Bi or Snowflake instantly reflect in both systems. No stale data, no manual imports.

No-code + pro-code

Workflow automation

Trigger automated workflows whenever Microsoft Power Bi or Snowflake data changes, update records, fire webhooks, or kick off sequences without brittle API scripts.

At scale

Event queues

Handle millions of events per minute without losing a single Microsoft Power Bi or Snowflake record.

Observability

Monitoring

Track your Microsoft Power Bi ⇄ Snowflake sync health, view errors, and replay failed events in one click.

Trading partners

EDI

Transform legacy EDI complexity into simple database interactions between Microsoft Power Bi and Snowflake.

How the Microsoft Power Bi and Snowflake connectors work

Microsoft Power Bi

Integration surface
Power BI REST API, including the Execute Queries (DAX) endpoint and admin scanner APIs; a read-write XMLA endpoint is available on Premium, Premium-Per-User, and Fabric capacity.
Authentication
Microsoft Entra ID (Azure AD) OAuth 2.0 bearer tokens. Supports delegated user tokens and app-only service principals; service principals must be enabled under the tenant's Developer settings and granted workspace access. Tenant-wide admin reads require the Tenant.Read.All scope.
Change detection
Pull-based: no webhooks or change-data-capture. Content is polled via REST list endpoints, dataset changes are inferred from Refresh History and the admin Activity Events audit log, and the scanner API's GetModifiedWorkspaces reports workspaces changed since a given time.
Capabilities
read
Rate limits
Endpoints throttle per user and per app and return HTTP 429 with a Retry-After header. Execute Queries allows up to 120 requests per minute per user and caps a query at 100,000 rows (or 1,000,000 values) and 15 MB; admin scanner metadata APIs are limited to about 500 requests per hour with 16 concurrent.

Snowflake

Integration surface
SQL via JDBC/ODBC and native drivers, plus the Snowflake SQL REST API
Authentication
Dedicated Snowflake service user + role with RSA key-pair authentication (Stacksync-provided public key), created via a setup script requiring SECURITY_ADMIN and ACCOUNTADMIN roles
Change detection
Not explicitly stated; the setup script grants "create stream" on synced schemas (Snowflake streams), but the docs do not name the change-capture mechanism
Capabilities
read · write · CDC
Rate limits
No conventional API rate limits; cost and throughput are governed by virtual warehouse size and running time
Snowflake setup guide
How it works

How to connect Microsoft Power Bi to Snowflake — three steps, no code

Configure and sync within minutes, no code. Whether you sync 50k or 100M+ records, Stacksync handles the queues, infra, and plumbing. Integrations are non-invasive and need zero setup on your systems.

  1. 01

    Connect your apps

    Authenticate Microsoft Power Bi and Snowflake with each platform's native method — OAuth, API keys, or service accounts — plus secure options like SSH tunneling, IP whitelisting, and VPC peering.

    • OAuth 2.0
    • SSH tunnel
    • VPC peering
    Microsoft Power Bi connected
    Snowflake connected
    OAuth 2.0
    SSH tunnel
    SSL certificate
    VPC peering
  2. 02

    Choose tables

    Pick the Microsoft Power Bi and Snowflake objects to sync — Stacksync auto-detects both schemas, including custom fields where the platform exposes them. Sync to existing tables, or let Stacksync create new ones with ideal data types.

    • Standard objects
    • Custom objects
    • Auto-schema
    objects · Microsoft Power Bi ⇄ Snowflake
    Customers 12,480
    Sales Orders 8,213
    Invoices 5,902
    Items 1,344
  3. 03

    Map fields

    Fields map automatically even when names and types differ. Stacksync handles transformation and type casting for you, zero configuration required.

    • Auto-map
    • Type casting
    • Transforms
    Microsoft Power Bi Snowflake
    Company company_name text
    Email email text
    Amount amount numeric
    Created created_at timestamp
FAQ

Microsoft Power Bi and Snowflake integration FAQ

SECURITY

Security teams trust Stacksync

As a data company, we understand the importance of keeping your data secure. Stacksync is built with security best practices to keep your data safe at every layer, and is DPF-certified for US, EU, UK and CH data transfers.

SOC 2 Type II
ISO 27001
HIPAA BAA
GDPR
CCPA
DPF US-EU-UK-CH
→ SECURITY WITH BENEFITS

SSO & SCIM

Let your users access Stacksync from your centralized user management systems. Works with Okta, Azure, Google SSO and more.

Alerts

Immediately get alerted about record syncing issues over email, Slack, PagerDuty and WhatsApp. Resolve issues from a centralized dashboard with retry and revert options.

Secure connection options

Securely connects to your systems with:

Coworkers laughing in front of a laptop in a casual office setting

Your last integration took months.
Your next one takes a prompt.