Pacing Calculator

This calculator gives a fixed pacing value (i.e. a delay between two iterations) to design an accurate workload model. Calculate the pacing value for workload modelling by providing the required inputs.

Note: Bookmark this page for quick access

Example:

Requirement: A company with an e-commerce website expects 9000 orders per hour. The company has 3,000 registered users, but only 600 customers are active at a time. A customer takes around 300 seconds to place an order. Now, the company wants to check whether the website can handle 600 customers load at a time or not.

Workload Modelling: A performance tester needs to design the workload model for the above requirement. After completing the script, he replays the flow and finds that one iteration takes around 90 seconds. He adds 10 seconds of think time between each pair of transactions and the sum of all the think times is 110.

The given number of orders per hour is 9000, hence the test needs to complete 9000 iterations with 600 users. To achieve this number accurate pacing needs to be added in the script. The above-given pacing calculator will provide a correct value of pacing:

  • No. of Users (Threads): 600
  • End to End Response Time (in seconds): 90
  • No. of Iterations per hour: 9000
  • Total Think Time (in seconds): 110

The calculated Pacing is 40 seconds. It means that a delay of 40 seconds will require between two iterations to place 9000 orders with 600 user loads in one hour.


15 thoughts on “Pacing Calculator”

  1. what is the formula to calculate the pacing value?
    Here having wonderful calculator is available but i would like to know how its doing?

    Regards,
    Sakthi

    Reply
  2. Hi,

    Thanks for such helpful content.

    Could you please share the formula you are using to calculate Pacing Time.

    Thanks.

    Reply
    • Hi Laxmikant,

      It means that your input (NFR) does not satisfy Little’s law. You need to provide realistic values. For example, if you want to calculate the pacing by providing 1 user with 100 seconds end-to-end response time for 100 iterations per hour then pacing will be negative, because such a scenario is practically impossible.

      Reply
  3. Hello

    just wanted to understand what if based upon input parameter i get negative pacing ?

    for exmaple :
    If i have given below inputs in the tool i get pacing as -8.5 , What i can interpret from this negative pacing ??
    Number of users 100
    End to End Response Time in (Seconds) 0.5
    Iteration per hout 180000
    Total Think Time in Second (0 for no think time) 10
    Calculated Pacing -8.5

    Reply
    • Hi Sumit,

      It means that the given values do not satisfy Little’s law and figures are unrealistic. In your case, 10 seconds think time is too much which you can control.

      Reply
  4. please suggest how to do that:

    Please calculate pacing for the below requirement:
    #concurrent users: 5000
    5 scripts – concurrent users split is 10%, 25%, 20%, 25% and 20%
    Volume per hour: 15000, 25000, 2000, 40000, 30000
    #transactions per iteration: 5
    Timetaken for 1 iteration : 60, 80, 70, 30, 50 seconds.

    Reply
    • Hi Prateek,

      As you mentioned transactions per iteration is 5, so does it mean each script has 1 transaction?

      Reply
        • First, let’s calculate the total volume per hour for all scripts:

          Total volume per hour = 15000 + 25000 + 2000 + 40000 + 30000 = 115,000

          Now, let’s calculate the average transaction response time for each script:

          Script 1: 60 / 5 = 12 seconds
          Script 2: 80 / 5 = 16 seconds
          Script 3: 70 / 5 = 14 seconds
          Script 4: 30 / 5 = 6 seconds
          Script 5: 50 / 5 = 10 seconds

          Next, let’s calculate the maximum and minimum delay between transactions based on the target transaction rate and the expected user concurrency:

          Target transaction rate = Total volume per hour / (60 * 60) = 115,000 / 3600 = 31.94 transactions per second (rounded up to 32)

          Maximum delay between transactions = 1 / Target transaction rate = 1 / 32 = 0.03125 seconds (rounded up to 0.04 seconds)

          Minimum delay between transactions can be set to 0 seconds.

          Finally, let’s calculate the pacing required for each script based on the expected user concurrency and the transaction mix:

          Script 1:

          Expected user concurrency: 5000 * 0.10 = 500
          Transaction mix: 5 transactions per iteration
          Pacing = Maximum delay between transactions * Expected user concurrency / Transaction mix
          Pacing = 0.04 * 500 / 5 = 4 seconds
          Script 2:

          Expected user concurrency: 5000 * 0.25 = 1250
          Transaction mix: 5 transactions per iteration
          Pacing = Maximum delay between transactions * Expected user concurrency / Transaction mix
          Pacing = 0.04 * 1250 / 5 = 10 seconds
          Script 3:

          Expected user concurrency: 5000 * 0.20 = 1000
          Transaction mix: 5 transactions per iteration
          Pacing = Maximum delay between transactions * Expected user concurrency / Transaction mix
          Pacing = 0.04 * 1000 / 5 = 8 seconds
          Script 4:

          Expected user concurrency: 5000 * 0.25 = 1250
          Transaction mix: 5 transactions per iteration
          Pacing = Maximum delay between transactions * Expected user concurrency / Transaction mix
          Pacing = 0.04 * 1250 / 5 = 10 seconds
          Script 5:

          Expected user concurrency: 5000 * 0.20 = 1000
          Transaction mix: 5 transactions per iteration
          Pacing = Maximum delay between transactions * Expected user concurrency / Transaction mix
          Pacing = 0.04 * 1000 / 5 = 8 seconds
          So the calculated pacing values for the five scripts are:

          Script 1: 4 seconds
          Script 2: 10 seconds
          Script 3: 8 seconds
          Script 4: 10 seconds
          Script 5: 8 seconds

          Reply
  5. Can any one tell me the Pacing and Think time without giving the Iteration time.
    We were given only Response time and Users and TPS, based on it, we need to calculate the pacing.

    Reply

Leave a Comment