Here’s a table format for Dataverse limitations to provide a clear and concise overview:
Category | Limitation | Implications |
---|---|---|
Storage | Limited storage: Database (10GB + 250MB/user), File (20GB + 2GB/user), Log (2GB). | Additional storage incurs costs. Large files and logs can quickly consume available storage. |
File size limits: Max 128MB for files, 30MB for images. | Large files must be stored externally (e.g., Azure Blob Storage). | |
API Call Limits | Default: 25,000 API calls/user/day. | Heavy automation or integrations may exhaust the limit, causing throttling. |
Tenant-level limits for service accounts. | Shared API limits can impact multiple apps relying on the same tenant. | |
Performance | FetchXML queries: Limited to 50,000 records per request. | Requires pagination for larger datasets, which can add complexity. |
Bulk operations: Slower for inserts/updates compared to traditional databases. | Performance may degrade with high-volume operations. | |
Concurrency limits: High concurrent access may require scaling environments. | May need multiple environments to handle large user bases. | |
Table Rows | Max 500 million rows per table. | Performance optimization is necessary for large datasets. |
Custom Code | No direct database access (e.g., SQL queries). | Must use FetchXML, Web API, or OData for queries, which can be less flexible. |
Calculated Fields | Cannot reference other calculated or rollup fields. | Limits complex calculations; workflows may be needed for advanced logic. |
Rollup Fields | Updated hourly by default. | Not suitable for real-time analytics or frequent updates. |
Relationships | No direct Nrelationships without junction tables. | Requires additional tables for many-to-many relationships. |
Security | Role-based security: Field-level security requires custom profiles. | Complex setups are needed for granular access control. |
Cross-business unit sharing is limited. | Requires manual role adjustments for data sharing across units. | |
Integration | Virtual tables: Limited CRUD operations; no complex relationships. | Cannot fully integrate external data sources without duplicating data. |
Power BI DirectQuery: May experience performance issues with large datasets. | Aggregation and optimization are necessary for smooth reporting. | |
Auditing | Audit logs are retained only per defined policies (e.g., 90 days). | Historical audit data must be exported for long-term retention. |
Audit logs consume log storage quickly. | Additional storage costs if logs are not managed effectively. | |
Licensing and Costs | High costs for premium features, additional storage, or API capacity. | Budget planning is crucial for scalability and enterprise-level implementations. |
User Experience | Model-driven apps have limited UI customization. | Branding and layout changes are constrained. |
Canvas apps have a default limit of 2,000 rows per data source (can be extended with delegation). | Delegation must be implemented carefully to avoid query limitations. |
Source: https://learn.microsoft.com/en-us/power-platform/admin/capacity-storage