Canvas app

What is a canvas app?

A canvas app is a kind of business app in Microsoft Power Apps. The maker begins with a blank design surface or a generated starting point and decides where forms, buttons, lists, images and other controls go. The name comes from that freedom: the screen is a canvas you paint on, rather than a layout the platform hands you.

You describe the interface and its behaviour with control properties and Power Fx formulas. A button can save a record, a gallery can show filtered orders, and a warning can appear only when a status calls for it.

A canvas app can connect to Dataverse and to many other cloud and on-premises sources. The app does not necessarily store the business data itself; connectors handle the conversation with each source, and a single app can combine several of them.

Screens, controls and formulas

A canvas app is a set of screens made of controls. Labels, input fields, forms, galleries, tables, cameras and containers are all controls.

Properties set both how a control looks and how it behaves. The Items property of a gallery decides which records appear. The OnSelect property of a button decides what happens when someone taps it.

Power Fx is declarative, so a formula usually describes the value a property should have and recalculates when the values it depends on change, much as an Excel cell does. Behaviour formulas run actions instead: moving to another screen, writing data, or starting a flow in Power Automate.

An app for site inspections

An organisation sends people to check installations on location. The app shows a checklist per installation, lets the inspector take photos, and works on a small screen.

The maker designs a home screen with scheduled visits, an inspection screen where questions appear only when they apply, and a summary for a signature. Microsoft Dataverse holds the installations, visits and findings, and Power Automate sends a notification after a serious finding.

This case suits a canvas app because the mobile, task-focused interface is the point. A standard record form would show more fields than the inspector needs and get in the way on a phone.

Data sources and delegation

A canvas app fetches data through connectors for Dataverse, SharePoint, SQL Server and hundreds of other services. The permissions of the source and the connection still decide what is visible; sharing an app does not hand over all its data.

With large tables, a filter should run on the source wherever possible. Power Apps calls this delegation. Formulas that cannot be delegated process only a limited local set, so they can return incomplete results without any obvious error. A formula that works fine against a hundred test records can be wrong against a hundred thousand real ones.

Check the delegation warnings the maker studio shows and test with realistic data volumes before you trust the numbers.

Responsive design and accessibility

Free placement does not mean every screen has to be pinned to fixed coordinates. Containers and relative sizes let an app adapt to a phone, a tablet and a browser.

A usable app supports keyboard control, a sensible reading order, enough contrast and clear labels. Colour on its own should never carry a status, since not everyone can tell red from green.

Test on the devices and screen sizes people actually use. Camera, location, offline behaviour and network delay can all differ from one client to another.

Canvas app versus model-driven app

A canvas app gives you a lot of control over the interface and can combine several data sources. It fits a specific task, a branded design or a mobile experience.

A model-driven app starts from a Dataverse data model and builds a consistent interface out of tables, forms, views, charts and navigation. It often fits data-rich case work with many related records better.

The two are not exclusive. A custom page with canvas capabilities can sit inside a model-driven app, so an organisation can run a canvas app for field work and a model-driven app for back-office handling on the same Dataverse data. Choose per task, not on looks alone.

Last Updated: July 18, 2026 Back to Dictionary
Keywords
canvas app Power Apps model-driven app Microsoft Dataverse low-code and no-code Power Automate SQL connector business intelligence