In almost every Power Platform implementation, one requirement appears sooner or later:

"Where should we store documents?"

At first glance, the answer seems straightforward—store documents in Dataverse. However, experienced architects know that document management is much more than simply uploading files. The right approach depends on factors such as scalability, storage costs, security, collaboration requirements, retention policies, and long-term maintainability.

This article explores the most common document management approaches in Dataverse, their advantages and limitations, and when each option should be used.

attachment

Option 1: Dataverse Notes (Annotation Table)

The Annotation table, commonly known as Notes, is one of the simplest ways to store documents in Dataverse.

notes

How It Works

When a user uploads a file from Power Apps:

  1. A Note record is created.

  2. The file is stored as Base64 content.

  3. The Note is linked to the business record.

  4. Users can access documents directly from the related record.

Typical Use Cases

Advantages

✅ Quick implementation

✅ Native Power Apps support

✅ No external repository required

✅ Inherits Dataverse security

✅ Easy retrieval from related records

Limitations

❌ Storage consumption increases rapidly

❌ Not ideal for large repositories

❌ Limited document management capabilities

❌ No advanced version control

Recommended When

Use Notes when:

Option 2: Dataverse File Columns

Microsoft introduced File Columns to provide a more modern and structured approach to storing files within Dataverse.

file

How It Works

A file column is added directly to a Dataverse table.

Examples

The uploaded file is stored directly within the record.

Advantages

✅ Native Dataverse capability

✅ Better user experience

✅ Simple implementation

✅ Reduced custom development effort

✅ Secure storage

Typical Use Cases

Limitations

❌ Storage costs can increase significantly

❌ Capacity planning is required

❌ Not ideal for massive repositories

Recommended When

Use File Columns when:

Option 3: SharePoint + Dataverse (Enterprise Best Practice)

For most enterprise applications, this is the preferred architecture.

Instead of storing files in Dataverse, organizations store document metadata in Dataverse and actual files in SharePoint.

Architecture

sp1

Store in Dataverse

Store in SharePoint

Advantages

✅ Lower storage costs

✅ Built-in version control

✅ Document sharing

✅ Co-authoring support

✅ Enterprise-ready governance

✅ Better scalability

✅ Document lifecycle management

Typical Enterprise Scenario

For a Purchase Order Application

Dataverse stores:

SharePoint stores

Recommended When

Use SharePoint + Dataverse when:

This is the architecture used by many large organizations because it provides an excellent balance between functionality and cost.

Option 4: Azure Blob Storage + Dataverse

For large-scale enterprise solutions, Azure Blob Storage is often the preferred option.

Architecture

Azure 1

Store in Dataverse

Store in Azure Blob

Advantages

✅ Extremely scalable

✅ Cost-effective for large volumes

✅ Supports millions of files

✅ Global availability

✅ Advanced integration capabilities

✅ Long-term archival support

Typical Use Cases

Recommended When

Use Azure Blob Storage when: