Slow Business Central Page Loads: Root Causes & Fixes (SaaS)
For SMEs using Microsoft Dynamics 365 Business Central SaaS. If Business Central is running slow, staff lose minutes on every page.
Those minutes turn into lost orders, late reconciliations, and unhappy teams. This guide shows you how to find the root cause and fix performance in Business Central SaaS—with clear steps, a self-triage checklist, and pragmatic fixes.
If you want hands-on help, book our Performance Optimisation Workshop and see the quick wins you can do today at the end this blog.
Who this is for
For companies running Business Central SaaS who are seeing:
-
Pages that take too long to open.
-
Lists that crawl when you search or scroll.
-
Card pages that lag when you switch records.
If that’s you, read on and test each fix in order.
Quick diagnosis: two built-in tools
1) Page Inspection (what’s on the page)
Goal: See the page’s data source, fields (incl. FlowFields), and which extensions touch it.
Steps (SaaS web client):
- Go to the slow page.
- Press Ctrl + Alt + F1 (or Help “?” → Inspect pages and data).
- In the right pane, review:
-
Table & Page: confirm the source table.
-
Fields: spot FlowFields and heavy totals.
-
Extensions: see which apps add fields/parts/FactBoxes.
-
- Make a note: lots of FlowFields? many FactBoxes? custom fields from several extensions?
Use it when: a specific page is slow and you need to see what it loads.
2) Performance Profiler (what’s taking time)
Goal: Measure where time is spent when you open a page or perform an action.
Steps (SaaS web client):
- Help “?” → Troubleshooting → Analyse performance.
- Click Start.
- Perform the slow action (open page, change record, apply filter).
- Click Stop.
- Review the result:
-
Active apps split (Base Application vs extensions).
-
Drill down (technical view) to see slow functions/operations.
-
- Note the worst offenders and the scenario that triggered them.
Use it when: you need proof of which extension or operation is causing the delay. This will be useful to your IT Support or Microsoft Partner when they come to review and determine what action to take.
If you find this article useful, click and subscribe to our newsletter - Business Central Uplugged - helping you use what you've already paid for!
The usual culprits (and what to do)
A) Over-customisation & heavy extensions
Symptoms: Profiler shows one extension dominating run time. Page has many extra fields, parts or triggers.
Fixes:
-
Remove or hide features users don’t need.
-
Ask your partner to refactor heavy triggers (e.g., OnAfterGetRecord) and avoid loops on page load.
-
Move intensive logic to background tasks or run it off-page.
-
Keep customisations lean. Every add-on has a cost at runtime.
Outcome: Faster first paint and snappier record changes.
B) Too many FlowFields
Symptoms: Slow open on cards/lists with totals; worse on records with lots of history.
Fixes:
-
Hide non-essential FlowFields.
-
Move occasional totals to a FactBox so they compute only for the selected record.
-
Ensure “calculate only visible FlowFields” is enabled in Feature Management (SaaS).
-
For heavy roll-ups, consider scheduled pre-calculation into a buffer table.
Outcome: Fewer on-the-fly sums, faster page load.
C) FactBoxes doing too much
Symptoms: Page feels busy; right-hand panes load slowly; profiler time sits in Base Application.
Fixes:
-
Remove or collapse low-value FactBoxes via Personalisation.
-
Keep only what users truly use daily.
-
If needed, redesign heavy FactBoxes to load asynchronously or simplify their data.
Outcome: Less parallel work at open; UI remains responsive.
D) Inefficient searching on lists
Symptoms: Typing in the Search box freezes large lists; “Searching…” lingers.
Root cause: Search does a wildcard scan across visible columns.
Fixes:
-
Train users to use the Filter Pane (Shift+F3).
-
Promote saved views with indexed fields (e.g., Date, No., Customer No.).
-
Default lists to sensible filters (e.g., “This financial year”).
Outcome: Near-instant results, lower server load.
E) Large datasets with no housekeeping
Symptoms: Historic ledgers or posted docs drag; scrolling stutters.
Fixes:
-
Apply Retention Policies where supported.
-
Clean up obsolete/open documents and old journals.
-
Compress historical entries where appropriate.
-
Default pages to recent periods; let users remove filters when needed.
Outcome: Smaller working sets, consistently faster lists.
F) Unoptimised page design & missing indexes
Symptoms: Slow initial sort; filters on non-indexed fields are sluggish.
Fixes (with your partner):
-
Set default sort to an indexed key (e.g., No. vs Date, if Date isn’t keyed).
-
Add keys for high-use filters.
-
Remove page triggers that block partial records or force full loads.
Outcome: Queries hit indexes; pages render quicker.
G) Client or network edge cases
Symptoms: One user/location slow; everyone else fine.
Fixes:
-
Modern browser (Edge/Chrome).
-
Stable connection; avoid heavy VPN routing.
-
Clear cache; try InPrivate to rule out extensions.
Outcome: Local issues ruled out before system changes.
Self-triage checklist to work through
Symptom | Likely cause | How to confirm | First fix |
---|---|---|---|
Page opens slowly every time | Heavy extension or many FlowFields/FactBoxes | Profiler shows one app high; Page Inspection shows FlowFields/FactBoxes | Hide fields/FactBoxes; disable non-essential extension features |
Card page lags when switching records | FlowFields recalculating | Page Inspection lists many FlowFields | Hide non-essential FlowFields; move some to a FactBox; enable “calculate only visible FlowFields” |
List search hangs | Wildcard search across columns | Only happens when typing in Search | Use Filter Pane; save indexed views; educate users |
Posted documents/ledgers sluggish | Large tables; no housekeeping | Table feels huge; old years included | Retention policies; clean up; compress entries; default recent-period filters |
List sorts slowly on open | Sort on non-indexed field | Partner checks keys; slow on first paint | Change default sort to indexed key; add index if needed |
Only one user is slow | Client/network | Others unaffected | Browser/connection check; extensions off; VPN route |
If more than one row applies, fix in this order: FlowFields/FactBoxes → Search habits → Data housekeeping → Page/index design → Extensions.
Step-by-step: a fast, repeatable diagnosis
- Pick one slow scenario (e.g., “Open Sales Order card” or “Search in Item Ledger”).
- Profile it: Help → Analyse performance → Start → do the action → Stop.
- Log the top offender (Base vs which extension; note ms).
- Inspect the page: Ctrl+Alt+F1 → list FlowFields, FactBoxes, and extensions on the page.
- Apply one fix from the sections above.
- Re-profile the same scenario.
- Repeat until the time is acceptable.
- Document the change so the team can replicate across similar pages.
If you’d like us to run this with your team and make the changes, ask about our Performance Optimisation Workshop.
Quick wins you can do today
-
Remove two FactBoxes from your worst-offending page.
-
Hide three non-essential FlowFields on that page.
-
Turn list Search habits into Filters; publish two saved views for common tasks.
-
Set default filters to current financial year on heavy lists.
-
Re-run Performance Profiler and record the improvement.
Each of these can shave seconds off page loads. Seconds per user per page add up to hours per month.
What “good” looks like
-
Pages open in under 2 seconds for common tasks.
-
Switching records feels instant.
-
Lists respond to filters without delay.
-
Users don’t complain about waiting; finance closes faster; ops keep moving.
If you’re not there, you’re leaving productivity on the table.
FAQs: Business Central Slow Pages
Why is Microsoft Dynamics 365 Business Central running slow?
Common causes include heavy or over-customised extensions, too many FlowFields, FactBoxes doing work on open, wildcard list search, large tables with no housekeeping, non-indexed sorts, and occasional client/network issues.
How do I diagnose a slow page with Page Inspection?
Open the slow page, press Ctrl+Alt+F1 (or Help → Inspect). Check the source table, FlowFields, FactBoxes, and which extensions add fields or parts. Note anything that looks heavy.
How do I profile a slow action with the Performance Profiler?
Help → Troubleshooting → Analyse performance → Start, perform the slow action, Stop. Review the split between Base Application and extensions and note the slowest operations.
Do FlowFields and FactBoxes affect performance?
Yes. Hide non-essential FlowFields, move occasional totals to a FactBox, enable “calculate only visible FlowFields”, and collapse or remove low-value FactBoxes.
Why does list search hang and how can I fix it?
Typing in the Search box can wildcard across visible columns. Use the Filter Pane (Shift+F3), promote saved views on indexed fields, and default heavy lists to sensible filters.
How do we prevent issues before users notice?
Set Application Insights alerts on duration/error thresholds, watch job queue failures and table growth, schedule load checks before peak periods, and keep a runbook for triage and escalation.
Book a Business Central Performance Optimisation Workshop
We’ll work with your finance and ops leads to:
-
Profile your top 10 slow journeys in Microsoft Dynamics 365 Business Central.
-
Remove low-value FlowFields and FactBoxes.
-
Fix page sorts/filters and align with indexed keys.
-
Triage extensions and refactor hot spots.
-
Set up housekeeping (retention, compression, default filters).
You’ll get a measurable improvement and a repeatable playbook your team can use.
Interested?
Enter your details below or call us on +44 (0) 1782 976577