# The 3 Types of Power Apps

Given there's a variety of different things that fall under the category of 'apps', Microsoft has made this process simplistic by abstracting away all that complexity and defining the 3 major types of apps. These being:

## Canvas Apps

Canvas Apps are more or less your traditional type of apps - the ones that you think of when the word is brought up; mobile or web applications. With Canvas apps, you're given **an environment that looks like PowerPoint** where you have **complete control over the design decisions for the app** and you can add and configure how it looks and works easily.

**You start off with a blank canvas**, so you're completely free to go whichever direction you want. For interaction with data, you simply hook that up by adding a connector to link and communicate with the app. Any sort of program logic or backend linkage can be done using those `formulae` that Excel uses, giving you immense flexibility when building.

![Canvas App example](/files/-MAX8n1525aiJm01nEgO)

## Model-driven Apps

Model-driven Apps are **a level up from the custom-built designs that the Canvas Apps provide**. With model-driven apps, the formulaic logic is taken care of without worry, and the elements within your app is dependent on the data you give it.

So model-driven apps take this data and transform it into an interactive manner (be it a table, graph or whatever). You simply need to take care that the data is sorted properly and managed in a manner so the relationships within the data are clear. Power Apps can then easily generate an application for you, with the different modules being built using the data relationships.

![Model-driven App example](/files/-MAXAVNhPh6HhbVO6NxE)

## Portals

Portals cover the final piece of the puzzle, where they fill in the gap for websites or application spaces that contain user-based activities; such as managing your finances, analysing your data, etc. So portals exist as websites that can deliver a unique user experience with profiles and the functional data that comes with.

![Portal App example](/files/-MAXBmP0AOQcSDGYORG7)


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://ryotokuro.gitbook.io/microsoft/power-platform/power-platform-fundamentals/introduction-to-power-apps/the-3-types-of-power-apps.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
