Loading...

Canvas App Error: “Row Size Exceeded” – Causes, Fixes, and Best Practices

 Canvas App Error: “Row Size Exceeded” – Causes, Fixes, and Best Practices

When building Canvas Apps with Dataverse, you might see this error:

 The total size of the columns used in the database command exceeded the database limit.

 Cannot create a row of size 8087 which is greater than the allowable maximum row size of 8050.


If this caught you off guard, don’t worry. This error is not about your Power Fx formula—it’s a Dataverse + SQL Server limitation.



Why This Happens

Dataverse runs on top of Azure SQL and follows its row size limit (\~8 KB).

Here’s why you might hit this error:

1. Too Many Columns Selected

 Canvas Apps often load all columns by default, including:

  • Text and memo fields
  •  Lookup and choice fields
  •  Images and files
  •  Calculated or rollup fields

2. Temporary SQL Row Exceeds 8 KB

  • Behind the scenes, Dataverse queries try to build a temporary row.
  • If the sum of all columns exceeds 8,060 bytes, SQL blocks the operation.

 How to Fix the Row Size Issue

1. Only Select Required Columns

Use `ShowColumns()` to reduce row size:

ClearCollect(

    colContacts,

    ShowColumns(

        Contacts,

        "contactid",

        "firstname",

        "lastname",

        "emailaddress1",

        "mobilephone"

    )

)

This avoids large and unused columns like `Notes`, `Owner`, or `Image`.

2. Avoid Large Fields in the Main Query

  • Skip Images or Files in galleries.
  • Load multiline text fields only when needed.
  • Use `LookUp` or `OnSelect` to fetch details on-demand.

3. Use Delegation and Filtering

Never load the entire table if unnecessary:

ClearCollect(

    colContacts,

    ShowColumns(

        Filter(Contacts, StartsWith('First Name', TextSearchBox.Text)),

        "contactid", "firstname", "lastname", "emailaddress1"

    )

)

Keeps rows smaller and queries faster.

4. Split Large Tables

If your table has 100+ fields:

  • Move rarely used fields to a related child table.
  • Keeps your main table lean and performant.

5. Leverage Dataverse Views

Create a Dataverse view that includes only the columns your app needs.

  • Connect Canvas App to the view instead of the full table.
  • This drastically reduces row size and avoids SQL errors.

Quick Fix Example

Instead of loading everything from Contacts:

ClearCollect(

    colContacts,

    ShowColumns(

        Contacts,

        "contactid", "firstname", "lastname", "emailaddress1", "mobilephone"

    )

)

This reduces row size, prevents SQL errors, and speeds up your Canvas App.

 Pro Tips for Developers

  • Avoid Select All Columns in galleries or data collections.
  • Monitor delegation warnings to prevent partial data loads.
  • Optimize performance and memory usage with lean queries.

Summary:

The Dataverse row size limit in Canvas Apps is governed by SQL Server’s 8 KB (8,060 bytes) per-row limit. Exceeding this limit can occur when tables have too many text columns, lookup/choice fields, or file/image columns. When this happens, saving or retrieving data in Canvas Apps can fail.

To avoid this, follow best practices:

  • Select only the required columns in your queries.
  • Avoid pulling large fields (like file/image) in your main queries.
  • Use filtering and delegation to limit the data retrieved.
  • Consider connecting your Canvas App to Dataverse views optimized for performance.

By carefully managing the row size and retrieved fields, architects and developers can prevent database errors and ensure smooth Canvas App performance.

Published on:

Learn more
Power Platform , D365 CE & Cloud
Power Platform , D365 CE & Cloud

Dynamics 365 CE, Power Apps, Powerapps, Azure, Dataverse, D365,Power Platforms (Power Apps, Power Automate, Virtual Agent and AI Builder), Book Review

Share post:

Related posts

Power Platform Environment Deep Dive (Part 2)

In Microsoft Power Platform, choosing the right environment type is important because each environment is designed for a different business pu...

1 day ago

Power Platform Environment Deep Dive (Part 1)

Today, in the business enterpriese world, Power Platform enables organization to build application, automate workflow, analyze data  crea...

3 days ago

Book Review : Life 3.0 by Max Tegmark

This is the third book I’ve read this year, and even though I’m still in the early chapters, it already feels like my favorite read of the yea...

1 month ago

Dataverse Views Demystified: Making Data Work for You

In Microsoft Dataverse, users do not always see all the data stored in a table. What they can view depends on their security permissions, role...

2 months ago

Decode & Fix : Shared App host initialization has timed out in Microsoft Power Apps

 Issue :While working with apps in the Microsoft Power Platform, we encountered a critical issue where the application failed to load pro...

4 months ago

Dataverse Integration Patterns: Sync vs Async vs Event-driven (Real Use Cases)

As organizations start using Microsoft Power Platform, Microsoft Dataverse is no longer just a place to store data—it becomes a key part of ho...

4 months ago

Book Review : Don't Believe Everything You Think by Joseph Nguyen

My second book of this year is "Don’t Believe Everything You Think" by Joseph Nguyen. This book was recommended by a friend who strongly belie...

5 months ago

Book Review : Scary Smart by Mo Gawdat

The first book I read in 2026 was Scary Smart by Mo Gawdat, the former Chief Business Officer at Google.In today’s world, Artificial Intellige...

6 months ago

Managing Temporary User Access in Dataverse with Access Teams

Access Teams let you give people access to one specific record, not the whole table.Access Teams in Microsoft Dataverse are a powerful way to ...

6 months ago

Newsletter

Get the latest Dynamics 365 and Power Platform content in your inbox

A curated digest of community blogs, product news, videos, and podcasts — delivered without the noise.

Weekly updates Unsubscribe anytime Fresh community picks
We use your email only for the newsletter and you can unsubscribe at any time.
By subscribing, you agree to the privacy policy.