Epicor BPM Directive Overhead Calculator
Every method directive adds work to a save, and users feel it as lag. This calculator converts per-directive timing into per-call latency, server time and the total minutes your team waits each day, so you can decide what to consolidate or move off the critical path.
Your numbers
For example SalesOrder.Update or LaborDtl.Update calls per day.
Includes any queries or calls the directive makes.
Pre-processing and in-transaction directives block the user. Data directives and scheduled work do not.
Your results
Planning model with averages. Measure real directive times with the Epicor server logs or tracing before and after changes.
Added wait per call vs directives
Sweeps Directives firing per call from 0 to 20, holding your other inputs fixed.
BPM and customisation audit
Optional: have us review your directives for latency, duplication and upgrade risk.
Optional. The tool and every export work without this. No spam.
How to use it
Pick the method that worries you, such as a sales order or labor update. Enter calls per day, how many directives fire on each call and their average time. Set the share that runs synchronously, because only blocking directives make a user wait. Enter the base method time to see the percentage the directives add, then read the daily waiting per user.
- Count every directive that applies to the method, including disabled-but-deployed ones you forgot.
- Pull timings from the server log or by running with directives temporarily off.
- Compare scenarios by changing the sync share after moving logic to data directives.
The formulas
Added wait per call is directives multiplied by milliseconds each, scaled by the synchronous share. Overhead percent compares that to base time plus the added wait. Server hours per day count all directives, sync or not, since they all use the application server. Total user waiting is added wait multiplied by daily calls, and per-user waiting divides that across the people doing the work.
Interpreting results
A few hundred milliseconds across thousands of calls can add up to hours of collective waiting, even when no single save feels broken. If overhead exceeds a third of response time, review the directives for duplicate lookups, per-row database calls and logic that could run in a single combined directive. Moving work to a data directive or a scheduled process removes it from the user path.
Common mistakes
Multiple directives often re-read the same record. Heavy work such as emails or external web calls placed in pre-processing makes the user wait for a network. Directives on high-volume methods like labor entry deserve the most scrutiny. Always test with realistic data volumes, and keep directive groups documented so cleanup is possible.
Frequently Asked Questions
Do data directives slow users down?
Data directives work on field values within the transaction scope and are usually lightweight, but any directive that runs queries or calls external services can add time. Measure rather than assume.
How many directives per method is too many?
There is no fixed number. Judge by measured time, not count. A dozen light directives may cost less than one that queries a large table, so profile the slow ones first.
Why count asynchronous work in server hours?
It still consumes application server and database capacity even if the user does not wait. Heavy asynchronous load can slow other users at peak, so it belongs in capacity planning.
Can I move logic out of directives?
Often yes: scheduled functions, post-processing background work or integration tools can take non-urgent logic off the save path. Keep validations that must block a transaction in the synchronous path.
Netray can audit your BPM and customisation estate for performance and upgrade risk. The calculator needs nothing from us.
Related Tools
Epicor BAQ Runtime and Row Volume Estimator
Model how filters, joins and indexes change the rows a BAQ reads and the seconds it takes, before you publish it to users.
EpicorEpicor Task Agent Schedule Load Calculator
Calculate Task Agent utilization from recurring schedules, runtimes and slots, and find how many slots you need.
EpicorEpicor Upgrade Regression Test Effort Calculator
Size the regression testing for an Epicor upgrade from test cases, failure rate, fix time and tester count.
More Epicor tools
See all- Epicor Kinetic Customization Change Request Form Template
- Epicor Kinetic Go-Live Cutover Plan Template
- Epicor Kinetic User Access Request Form Template
- Epicor Kinetic BPM Directive Inventory Worksheet
- Epicor Kinetic Scheduled Task Register Worksheet
- Epicor Kinetic Custom Report Inventory Worksheet
- Epicor Kinetic Data Migration Mapping Worksheet
- Epicor Kinetic Data Load Effort Calculator
- Epicor Business Object Services Reference
New to Epicor ERP? Start with the Epicor ERP guide and toolkit, or plan with Training Path Builder, ERP Certification Study Planner, Upgrade Path Planner.
Keep exploring
Free tools
- Epicor Kinetic BPM Directive Inventory WorksheetAn editable register of your Epicor directives with owner, purpose, risk score and review date, exportable to Excel.
- Epicor BPM Directive Inventory WorksheetInventory your BPM directives, score complexity and retest effort, and see total upgrade retest hours. Export to Excel.
- Epicor BPM Directive Design TemplateA fill-in design document for BPM method and data directives covering trigger, conditions, actions, testing and rollback.
ERP fixes and how-tos
- Epicor BPM Data Directives and the Workflow Designer: When to Use Each, With an ExampleEpicor BPM data directives versus method directives, how the BPM Workflow Designer canvas works, and a worked example that blocks a save when data is missing.
- Epicor BPM Runtime Error: Where to Look and How to Fix ItHow to diagnose an Epicor BPM runtime error: where to find it in the server log, the common causes (null reference, compile, directive order) and fixes.
- How to Create a BPM Method Directive in Epicor KineticHow to build a Method Directive in Epicor Kinetic: choose the business object method, pre or post processing, add conditions and actions, test, and deploy safely.
AI on your ERP
- AI for Epicor Kinetic, Beyond What Prism CoversAdd AI to Epicor Kinetic beyond Prism: private LLM over BAQs, BPM data, and REST v2, on-prem or private cloud, with honest guidance on when Prism already covers you.
- Private AI for Epicor Kinetic Cloud, Outside the Multi-Tenant BoundaryRun a private LLM on Epicor Kinetic private cloud or Kinetic Cloud data via BAQs, REST v2 and Data Fabric, keeping sensitive manufacturing data off shared AI.
Integrations
- How to add WhatsApp to Epicor KineticHow to connect WhatsApp Business to Epicor Kinetic: REST and BPM triggers, template messages, opt-in rules and two-way replies that post back to the ERP.
- How to add Microsoft Teams to Epicor KineticSend Epicor Kinetic approvals and alerts to Microsoft Teams with adaptive cards, Entra ID sign-in, BPM triggers and REST write-back that respects ERP roles.