# What is think time (wait time) in load testing?

> Think time, called wait time in Loadster, is the pause between a simulated user's actions. Realistic wait times are what make load test results trustworthy.

Source: https://loadster.com/faqs/think-time-wait-time/

In traditional load testing parlance, "think time" is the pause between a simulated user's actions. It represents the
time a real person might spend reading, typing, or deciding what to do between clicks.

Loadster calls this "wait time" and implements it with wait steps in your scripts. In practice, "think time" and "wait
time" mean the same thing.

## Why Realistic Wait Times Matter

A bot with no wait steps sends its next request as soon as the previous one finishes. Even 100 bots with zero wait time
might generate as many requests as thousands of real users, because real users typically spend much of their session
reading and thinking instead of loading pages continuously.

If your wait times are too short, you'll overstate the load generated by each virtual user and might conclude that your
site can handle fewer concurrent users than it actually can. Try to make your scripts run at approximately the same pace
as real users. Otherwise, your conclusions about concurrent user capacity might be misleading.

## Wait Times, Session Duration, and Concurrency

Wait times often make up most of a script iteration's duration, and the iteration duration is what relates concurrency
to throughput. The longer each user's session lasts, the more concurrent users you need to produce a given transaction
rate. For example, 5,000 visits per hour with visits lasting around 3 minutes works out to roughly 250 concurrent users.

Changing your script's wait times changes how much traffic a given number of bots will generate. The FAQ
on [calculating how many bots you need](https://loadster.com/faqs/calculating-v-users-needed-for-a-load-test/) includes a formula for
working backwards from your target transaction volume, and realistic wait time is an important input to that
calculation.

## Setting Wait Times in Loadster

In both [protocol scripts](https://loadster.com/manual/protocol-scripts/) and [browser scripts](https://loadster.com/manual/browser-scripts/), you can add wait
steps between actions and set the duration in seconds. Before running a large test, review the wait steps in each script
and make sure they approximate how an average user would move through the flow.

In [code blocks](https://loadster.com/manual/code-blocks/bot/), `bot.sleep(milliseconds)` does the same thing, and you can randomize the
duration if you want more natural variation. In Playwright scripts, you can use Playwright's waiting methods such as
`page.waitForTimeout()`. Fixed wait times are generally fine for load testing, but some variation can help prevent large
numbers of bots from sending requests at exactly the same time.

## When to Use Zero Think Time

There are situations where zero think time makes sense. For example, you might want to generate the maximum possible
load during a stress test, or you might be testing an API whose real clients are machines that send requests
continuously.

Make this rare and deliberate choice only when it makes sense for what you want the test to measure. A test with zero
think time can help answer "how much raw traffic can this system handle?", but it doesn't necessarily tell you how many
human users the system can serve.

