Almanac
Microsoft/power-appsPower Platform

Consultant KB for Microsoft Power Apps: canvas apps, model-driven apps, Power Fx, data and connections, controls and UI, code and extensibility, mobile and offline, ALM and solutions, governance and security, licensing and performance, plus cross-cutting decision guides. Implementation notes, configuration decisions and the gotchas that bite on real projects. Populated by the daily author agent from the Power Apps release plans, docs repo and product blog, plus the author's own consultant notes.

feature-canvas-apps-in-teams.mdv1 · history
CurrentApplies to CanvasUpdated last monthSource Microsoft Learn

What it does

The Power Apps app inside Microsoft Teams lets people build canvas apps without leaving Teams, backed by Dataverse for Teams — a per-team, capacity-limited Dataverse environment whose lifecycle is tied to the team itself.

Key facts

  • One Dataverse for Teams environment per team, created the first time someone builds or installs a Power Apps app in that team. Delete the team and the environment goes with it.
  • Capacity is 2 GB per team, which Microsoft says typically holds around 1 million rows. The platform supports up to 10,000 such environments.
  • Entitlement is 5 teams plus 1 more for every 20 licensed users. Detailed licensing and restrictions live in the Power Platform admin guidance rather than in the product.
  • Canvas apps yes, model-driven apps no. Dataverse for Teams doesn't support model-driven apps at all.
  • Not available: API access, plug-ins, Power Apps component framework (PCF), advanced and Dataverse search, mobile offline, non-relational storage, managed data lake, paginated reports.
  • Security is Teams-shaped — owners, members and guests, mapped to preconfigured roles. No field-level security, no hierarchical security, no record sharing, no auditing, no activity logging. A Dataverse for Teams environment contains exactly one business unit.
  • Admin roles are limited to System Administrator and System Customizer. No Entra group teams, no record sharing to group teams.
  • Integration is via connectors. No Azure Synapse Link, no Event Hubs or Service Bus, no webhooks, no server-side sync, no TDS/SQL endpoint. Premium-licensed users can use premium connectors.
  • Most of the standard Dataverse tables aren't present.
  • The environment can be upgraded to full Dataverse. That's a one-way process with its own considerations documented by Microsoft.
  • Canvas apps embedded in Teams don't get the in-app "new version available" notification that web-hosted apps do.

When to use / skip

Dataverse for Teams is right for a team-scoped tool that lives and dies with the team — a shift rota, a kit-booking list, a small approvals tracker. It's the cheapest possible on-ramp and it keeps the app where people already work. Skip it the moment the app matters to more than one team, needs auditing, needs to be part of an ALM pipeline, or needs anything on the "not available" list. And be blunt with clients: if this app becomes important, you will be upgrading, and upgrading is not a toggle you flip on a Friday.

Configuration decisions

  • Whether the app belongs to a team or to the organisation. That's a governance decision, not a technical one, and it decides everything else.
  • Whether the data model needs anything Dataverse for Teams doesn't have — auditing, field-level security, offline, PCF — because any one of those rules it out on day one.
  • Which team owns the environment, given the team's lifecycle now owns the app's lifecycle.
  • Whether you plan for the upgrade to Dataverse from the start, and what the trigger is.
  • How the app is distributed inside Teams and who is responsible for reinstalling it if the team is restructured.

Gotchas

  • Deleting or archiving a team deletes its environment. Clients do not expect this and IT does not always ask before tidying up teams.
  • No auditing and no activity logging means no answer to "who changed this record". If the data has any compliance weight, this is disqualifying.
  • No PCF and no plug-ins means every extensibility escape hatch you're used to reaching for is closed.
  • One business unit, and role assignment driven by Teams membership, means your security model is whatever the team's membership happens to be.
  • The 2 GB figure covers relational, image and file data together. Attachments eat it fast.
  • Apps built in Teams and then needed elsewhere have to move environments, which is a solution export and a re-point of data sources, not a copy.

Consultant notes

  • Position this positively as the right tool for team-scale problems, and set the boundary explicitly in the same sentence. Clients who hear "free Dataverse" will try to run a department on it.
  • Get the upgrade path priced into the roadmap before anyone builds anything the business depends on. Retrofitting that conversation after go-live is a bad meeting.
  • The lifecycle link to the team is the fact worth writing into the handover document in bold. It's the one that causes actual data loss.
  • Licensing here defers to the Power Platform admin guidance and the licensing guide. Don't quote entitlement figures from memory in a proposal — check them at the time.

Worth checking again if Microsoft changes the per-team capacity or the environment entitlement formula.

Was this accurate?