# SAP Background Job Capacity Calculator

> Source: https://netray.co/tools/sap-background-job-capacity-calculator
> Publisher: Netray (netray.co), AI and integration engineering for ERP and manufacturing systems.
> Section: Free Tools

## Short answer

Estimate batch window utilisation, elapsed time and how many background work processes you need to finish nightly jobs.

## Category

sap

## Erp

SAP ECC and S/4HANA

## Audience

- SAP Basis administrator
- Batch scheduler

## Tool

**Kind:** calculator

**Inputs:**

#### Background work processes available

**Key:** wp

**Type:** slider

**Default:** 10

**Min:** 1

**Max:** 40

**Step:** 1

**Unit:** BTC WPs

**Help:** Count of BTC work processes across the batch server group, excluding those reserved for class A jobs.

#### Jobs in the nightly window

**Key:** jobs

**Type:** number

**Default:** 900

**Min:** 0

**Step:** 10

**Unit:** jobs

#### Average job runtime

**Key:** avg_min

**Type:** number

**Default:** 6

**Min:** 0

**Step:** 0.5

**Unit:** min

**Help:** Use the median from SM37 or the job statistics for the last 30 days.

#### Batch window

**Key:** window_h

**Type:** number

**Default:** 8

**Min:** 1

**Max:** 24

**Step:** 1

**Unit:** hours

#### Target utilisation

**Key:** target_util

**Type:** slider

**Default:** 70

**Min:** 30

**Max:** 95

**Step:** 5

**Unit:** %

**Help:** Leave headroom for reruns, delays and dependencies.

**Outputs:**

#### Total workload

**Key:** workload

**Expr:** jobs * avg_min

**Format:** minutes

**Description:** Sum of job runtime in work process minutes.

#### Window capacity

**Key:** capacity

**Expr:** wp * window_h * 60

**Format:** minutes

#### Utilisation

**Key:** util

**Expr:** workload / capacity * 100

**Format:** percent

**Primary:** true

#### Minimum elapsed time

**Key:** elapsed

**Expr:** workload / wp

**Format:** minutes

**Description:** Best case with perfect parallelism and no dependencies.

#### Work processes for target utilisation

**Key:** need_wp

**Expr:** ceil(workload / (window_h * 60 * target_util / 100))

**Format:** integer

**Primary:** true

#### Spare capacity

**Key:** headroom

**Expr:** capacity - workload

**Format:** minutes

**Chart:**

#### Batch window utilisation (%) vs work processes

**Type:** line

**X:** wp

**From:** 1

**To:** 40

**Steps:** 40

**Series:**

- util

**Disclaimer:** Averages hide critical-path chains. A single long dependent chain can overrun the window even when overall utilisation looks low.

## Content

**Intro:** When the nightly chain starts running into business hours, the first question is whether you have too few batch work processes or too many jobs. This calculator separates capacity from scheduling by comparing total job minutes with available work process minutes.

**Sections:**

#### How to use it

**Body:** Enter the number of background work processes that can actually take your jobs, the count of jobs in the window and the median runtime. Choose the utilisation you are willing to run at. The result shows how full the window is, the minimum elapsed time if everything were perfectly parallel, and how many work processes you would need to hit the target.

**Bullets:**

- Use SM37 or job statistics for runtimes, not estimates
- Exclude jobs that run outside the window
- Remember work processes are shared with class A jobs and system jobs
- Check the operation mode, which can change the count by time of day

#### The model

**Body:** Workload is jobs times average runtime. Capacity is work processes times window minutes. Utilisation is their ratio. The minimum elapsed time is the workload divided by the number of processes, a lower bound that ignores chains. The required work processes divide workload by the window minutes at the target utilisation, rounded up. It is a capacity check, not a scheduler simulation.

#### Worked example

**Body:** 900 jobs at 6 minutes is 5,400 work process minutes. With 10 work processes in an 8 hour window the capacity is 4,800 minutes, so utilisation is 112 percent and the window must overrun. At a 70 percent target you need ceil(5,400 / (480 x 0.7)) = 17 work processes. Before adding processes, consider whether the runtimes are inflated by database contention, which often means more processes make things slower, not faster.

#### Common mistakes

**Body:** Adding work processes without checking the database and memory limits can reduce throughput. Using the mean when a few very long jobs dominate hides the real critical path. Assuming every process is free overlooks the jobs that also run during dialog hours. Finally, some long running jobs can be split by selection variants to run in parallel, which is usually cheaper than adding hardware.

**Cta:** If you want a read-only assistant that reads job statistics and highlights the chains and runtimes behind batch overruns, Netray can discuss an on-prem setup.

**Faq:**

#### How many background work processes should I have?

**Answer:** There is no universal number. Size from your own workload: total job minutes divided by window minutes at a utilisation you are comfortable with, then validate against CPU, memory and database headroom, since batch competes for the same resources.

#### Why does utilisation above 100 percent matter?

**Answer:** It means the jobs cannot finish inside the window even with perfect scheduling. Either the window grows, the workload shrinks, runtimes improve or capacity increases.

#### Does this include dependencies between jobs?

**Answer:** No. Chains of dependent jobs set a minimum elapsed time that the average-based calculation cannot see. Review the longest chain in your scheduler separately.

#### Where do I get runtimes?

**Answer:** The job overview transaction SM37 and the job runtime statistics list start and end times. Export a representative month and use the median per job group, excluding unusual period-end peaks.

## Search terms

sap background work process sizing, sap batch window calculator, sap btc work processes how many, sap sm37 job runtime capacity, sap nightly batch planning, sap job scheduling capacity, sap batch window overrun, sap background processing sizing

---
Talk to an engineer: https://netray.co/contact?intent=erp_ai | Machine catalog: https://netray.co/agent/catalog.json
