What is the difference between a canvas app and a model-driven app?

By Emil Björk · Microsoft business apps consultant, Gothenburg

A canvas app starts from a blank screen you design pixel by pixel, connecting to whatever data sources you choose (Dataverse, SharePoint, SQL, hundreds of connectors). A model-driven app starts from a Dataverse table's own metadata and generates forms, views, and navigation automatically, so it's faster to build for data-heavy business apps but far less flexible visually.

Choose canvas for a purpose-built, visually specific experience over any data source, especially where the app is mostly forms and a specific workflow rather than general-purpose record management. Choose model-driven when the app is essentially 'manage records in a set of related Dataverse tables' — the automatic forms, views, business rules, and security-role integration save enormous build time exactly because you give up granular layout control.

Every core Dynamics 365 app (Sales, Customer Service, Field Service) is itself a model-driven app under the hood — which is a strong signal for how well model-driven scales to complex, security-conscious, data-centric business applications when the visual flexibility of canvas isn't the priority.

Go deeper

Other questions