A dynamic dashboard runs as whoever is looking at it, so every viewer sees their own data from one dashboard instead of you building one per team. Salesforce caps how many you can have per org, and the cap is small: three in Developer Edition, five in Enterprise, ten in Unlimited and Performance. They also cannot be scheduled, refreshed on a timer, or subscribed to, because there is no single result to compute in advance.
What the setting actually changes
Every dashboard has a running user, and the data is computed with that user’s record access. The default is a fixed person. Switch it to “run as logged-in user” and the dashboard becomes dynamic: each viewer’s own sharing, role and territory access decides what the components summarise.
The reports underneath do not change. The same report, the same filters, the same report type. What changes is whose rows come back, and therefore every total on screen.
The cap, and why it exists
The limits are per org, not per user or per folder:
- Developer Edition: three
- Enterprise Edition: five
- Unlimited and Performance: ten
Professional Edition does not offer them at all. Add-on capacity is available from Salesforce in some cases, and it is a commercial conversation rather than a setting you can flip.
The reason for the cap is cost. A fixed-running-user dashboard is computed once and cached, and a thousand viewers read the same cached result. A dynamic dashboard is computed per viewer, per open. A thousand viewers means a thousand executions of every source report. That is not a licensing artefact, it is the actual work being done.
Why they cannot be scheduled
Scheduled refresh works by computing the dashboard ahead of time and storing the result. There is no single result for a dynamic dashboard, so there is nothing to store. The same reasoning rules out emailed dashboard subscriptions and any workflow that depends on a cached snapshot.
Living within the cap
Five is not many for an org with several departments, so the workarounds matter.
Push personalisation into the reports. A report filtered to “My records” or “My team’s records” is evaluated against whoever runs it. A fixed-running-user dashboard built on such reports will not personalise, but a report subscription or a report the user opens directly will. Not every requirement needs a dashboard.
Use dashboard filters instead. One dashboard with an owner filter and a fixed running user covers a lot of “let me see my own numbers” requests, at the cost of the viewer selecting their own name. It is worse than dynamic, and it is free.
Reserve the dynamic ones for the top of the hierarchy. Managers benefit most, because their view differs meaningfully from their peers’. Individual contributors usually want a filtered list, not a dashboard.
Permissions
Creating and editing dynamic dashboards requires the Manage Dynamic Dashboards permission. Saving one as “let viewers choose” additionally depends on the viewer’s own permissions, so a user without the relevant access sees the dashboard run as the specified user with no choice offered, which looks like the option is broken.
Performance, honestly
Dynamic dashboards are the slowest thing most orgs run without realising it. Nothing is cached, so the wait is the full cost of every source report, paid on every open, by every person.
Two rules keep them usable. Keep the component count low, because each component is a query. And make sure every source report is genuinely fast for an ordinary user rather than only for an administrator with a warm cache. A report that takes eight seconds becomes a dashboard that takes a minute once six of them run together.
Frequently asked
Do dynamic dashboards respect field-level security? Yes, as the viewer. A field the viewer cannot see is not summarised, and the component can render empty rather than warning, which reads as a broken dashboard.
Can I follow a dynamic dashboard component in Chatter? Component following depends on a stable computed value, so features built on cached results do not apply to dashboards computed per viewer.
Can I convert an existing dashboard to dynamic? Yes, by changing the running user setting, assuming you are under the cap. The components and reports are untouched. Check the filters afterwards, because a filter that made sense for a fixed running user often duplicates what the viewer’s own access now does.
Does the cap count inactive dashboards? It counts dashboards configured to run as the logged-in user, whether or not anyone opens them. Changing an unused one back to a fixed running user frees a slot immediately.
