Choose SPSync when you need specific SharePoint lists as tables in a database you run; choose Microsoft Graph Data Connect for governed, tenant-wide Microsoft 365 activity data in Azure or Fabric.
Documentation reviewed
Where Microsoft Graph Data Connect fits
- Microsoft-native, with granular admin consent and governance built in
- integrates directly with Fabric, Azure Synapse and Azure Data Factory
- designed for tenant-wide analytics across Teams, Outlook, Viva and more, not just SharePoint
- backed by Microsoft Purview for data governance
Where it breaks
- Built for Microsoft 365 activity and collaboration datasets, not general SharePoint list replication
- the SharePoint datasets Microsoft documents cover sites, permissions, groups, files and file actions; list items are not among them
- requires Azure Synapse, Data Factory or Fabric as the destination; no direct SQL Server, Postgres or MySQL target
- data access goes through an admin consent and approval workflow before the first data arrives
- billed through Azure; see the Graph Data Connect pricing page
- described by Microsoft as a route to Microsoft 365 data for enterprise analytics, not as a list replication tool
Feature by feature
| Feature | SPSync | Microsoft Graph Data Connect |
|---|---|---|
| SharePoint Online support | Core product | SharePoint datasets for sites, permissions, groups, files and file actions; not list items |
| On-prem SharePoint support | On the roadmap | Not documented |
| Destinations | Relational, warehouse, lake and search/vector destinations: 20 destination engines (30+ named targets such as Azure SQL, MariaDB and Supabase), including SQL Server, Postgres, BigQuery, Databricks, ClickHouse, Parquet, Iceberg, pgvector and Azure AI Search; see /destinations/ | Azure Synapse, Microsoft Fabric, Azure Data Factory |
| Lookup normalisation | Lookups become joinable key columns | Not applicable; datasets are pre-defined by Microsoft and are not list-schema aware |
| Multi-value columns | Child tables | Not applicable |
| Deletes | Soft delete by default, hard delete with the command-line tool | Not documented for list items |
| Delta sync | Every few minutes by default, plus a reconcile, weekly by default | Bulk, batch extraction rather than a short polling schedule |
| Schema evolution | New columns appear automatically; on SQL Server, PostgreSQL, MySQL, ClickHouse, Oracle, SQLite and DuckDB retyped columns get a _v2 column | Dataset schemas are defined by Microsoft |
| Hosted option | SPSync in your Azure | Always Azure-hosted |
| Desktop app | macOS and Windows | None |
| CLI / CI | Built-in CLI | Configured through Azure Data Factory or Synapse pipelines |
| Per-site least-privilege permissions | Delegated sign-in or app-only with Sites.Selected, bring-your-own-app | Admin consent and approval per dataset; see Microsoft's documentation |
| Pricing model | Licensed per installation and per target family, on annual terms, with Standard Support included; no public price list, quoted after a call | Billed through Azure; see the Graph Data Connect pricing page |
Microsoft Graph Data Connect answers a different question from list replication. It gives bulk, governed access to Microsoft 365 activity data (Outlook, Teams, Viva Insights and SharePoint collaboration signals) for enterprise analytics such as relationship mapping, process mining or organisational network analysis. Its consent model, tied to Microsoft Purview and approved by an admin per dataset, is the governance a large enterprise needs before that data moves anywhere. For a project about how people work across Microsoft 365, it is Microsoft’s own answer, and it integrates well with Fabric, Synapse and Data Factory.
Why list replication is outside its scope
Data Connect is not aimed at copying a SharePoint list into a database. The SharePoint datasets Microsoft documents cover sites, permissions, groups, files and file actions, and list items are not among them. Microsoft documents delivery to Microsoft Fabric, Azure Synapse and Azure Data Factory, so reaching SQL Server, Postgres or MySQL takes another hop. The approval workflow suits its intended use and adds lead time before the first data arrives.
Specific lists as tables
SPSync does the job Data Connect leaves aside. Point it at a site, choose the lists, and it replicates them into a normalised schema in the database you already run, kept current every few minutes. There is no dataset approval to wait for, and nothing to stand up in Synapse or Fabric first.
Teams move over when what they need is specific SharePoint lists as queryable tables in a database outside the Azure analytics stack.
Separating the two workloads
- Check whether your use case needs Data Connect’s wider Microsoft 365 activity datasets, or whether it only ever read specific SharePoint lists.
- For list workloads, sign SPSync in to the site and tick the lists.
- Choose a destination database and schedule; the first full load and delta sync replace the batch extraction pipeline.
- Repoint downstream reporting at the new tables.
- Keep Data Connect for anything that depends on its Microsoft 365 datasets. The two solve different problems.
SPSync as a Microsoft Graph Data Connect alternative for SharePoint lists
Graph Data Connect has no list items dataset, so for list data SPSync fills a gap more than it swaps one tool for another. It needs no dataset approval and no Azure analytics stack: it reads the lists you pick by delta query and writes them to SQL Server, Postgres, MySQL or another shipped destination.
Other alternatives
- Azure Data Factory: reads list items through its SharePoint Online List connector, inside the same Azure pipelines Data Connect feeds.
- Fabric Dataflow Gen2: copies a list into Fabric with a dataflow or a full-load Copy job, next to Data Connect's OneLake output.
- PnP PowerShell: scripts that read list items through Graph, for one-off extracts you are happy to maintain.
Frequently asked questions
Can Microsoft Graph Data Connect export SharePoint list items?
Microsoft's dataset list for Graph Data Connect covers SharePoint sites, permissions, groups, files and file actions, and has no dataset for list items (checked 2026-10-16). For list items you need another route, such as the Graph API directly, Data Factory's list connector or SPSync.
Does SPSync need Azure Synapse or Fabric?
No. SPSync writes straight to the database you name, from SQL Server and PostgreSQL to BigQuery or Parquet files, and runs from the desktop app, the command line or SPSync in your Azure.
Can Graph Data Connect and SPSync feed one analytics project?
Yes. Data Connect supplies the activity and file datasets, SPSync supplies the business records held in lists, and both can end up in the same Azure SQL database for joining.
Desktop, Azure or command line
All three editions run the same engine, write the same tables and use the same licence key, so the choice comes down to who looks after the sync.
Desktop app
For macOS and Windows. Sign in with Microsoft, tick the lists, choose a database and sync from your own machine on the schedule you set. Delegated sign-in needs no admin unless your tenant requires admin consent for apps.
In your Azure
SPSync in your Azure, a managed application for your own subscription, is deployed with you on a call while the Marketplace listing is prepared. Once deployed it is always on, so the sync keeps running with every laptop closed.
Command line
Every replication is a YAML file you can review and commit. Run it from a server, a container or a CI pipeline, and re-run it safely any time.