Best Practices for CRM Analytics Dashboard Performance

Design dashboards that load quickly. Fast dashboards keep users engaged and reduce load on your org.

Best practices

  • Limit the number of widgets and queries on a page. Every query adds load time. Keep each page to six or fewer queries where you can.
  • Split content across pages so that only the default page's queries run on load.
  • Show summary data first, and let users drill down for details instead of loading all data initially.
  • Filter early. Reduce the rows a query returns by applying filters and using selection-driven results. Filter and group before projection, and remove redundant filters.
  • Combine simple KPI queries that share a dataset into one query with multiple measures.
  • Use global filters instead of selection-based filters to apply one filter across queries in a single pass.
  • Reuse results across widgets with faceting and bindings instead of running duplicate queries.
  • Query only the fields and groupings that you need, and avoid high-cardinality groupings where you can. Reference multi-value fields only in filters, not in groupings.
  • Precompute derived fields in your recipe rather than at query time, and reuse datasets instead of creating a new one for each dashboard.
  • Split very large dashboards into a series of linked dashboards.
  • Keep row-level security efficient. Design security predicates and sharing inheritance to filter data without adding heavy overhead.
  • Build and test in a sandbox before you deploy to production.

Measure and tune

Use the Dashboard Inspector to see how long queries take and to find the widgets that slow a dashboard down. Optimize the slowest queries first, and then re-measure.