Skip to content

Glossary

Canvas App

By Emil Björk · Microsoft ecosystem consultant, Gothenburg

A Power Apps application designed visually with drag-and-drop controls and Power Fx formulas.

A canvas app in Power Apps is an application designed visually — drag and drop controls (labels, buttons, galleries, forms) onto a blank canvas, bind them to data sources, and use Power Fx (an Excel-like formula language) for behaviour. The blank-canvas freedom gives total layout control — useful for task-oriented mobile apps, inspections, custom forms, focused workflows. Different from model-driven apps, which generate UI automatically from a Dataverse data model with less visual flexibility. Canvas apps work well for focused, task-oriented scenarios; model-driven apps work better for record-management apps with many entity types. Canvas apps can connect to SharePoint, Dataverse, SQL, Excel, and hundreds of other sources via connectors.

Worked example

A facilities team needs a mobile app for inspectors walking a building to log issues — a cracked tile, a broken light, a blocked exit — each tagged with a photo and a location, submitted from a phone with patchy signal. A canvas app built against a SharePoint list handles exactly this: the designer drags a camera control, a location picker, and a submit button onto the canvas, wires them together with a handful of Power Fx formulas, and configures offline-capable behaviour so an inspector can keep logging issues even in a signal dead zone in the basement, syncing once connectivity returns.

Common pitfalls

Designing a canvas app with dozens of screens and complex navigation logic, when the underlying data actually has many related entity types, often signals the wrong tool was chosen — that level of complexity is usually a sign a model-driven app, generated from a proper Dataverse data model, would have been both faster to build and easier to maintain. Ignoring delegation limits when a data source grows past a few thousand rows is a common and hard-to-diagnose performance problem — formulas that aren't delegable silently process only a subset of the data locally, and an app that worked fine in testing on a small list can quietly start returning incomplete results as real data volume grows. And treating a canvas app's polished, professional-looking interface as proof it was built and reviewed with the same rigour as a fully governed development project overlooks that the ease of building one can outpace the ease of maintaining, securing, and supporting it long-term.