When performing load tests, it can be important to test your website and applications against concurrent users, and in some cases, simultaneous users, but what is the difference? And when should you carry out concurrent vs. simultaneous user testing? A lot of people get confused when they hear the words “concurrent users” and “simultaneous users.” Even the most qualified techies get confused when they talk about concurrent and simultaneous users and related topics. Though there are many different definitions and examples available all over the web, it is likely that either you do not understand them or get more confused after reading them.

When it comes to performance testing, it becomes even more critical that you understand concurrent vs. simultaneous users at the fundamental level to effectively apply your knowledge for successful testing. Performance testing such as load testing, stress testing, etc., are heavily influenced by the type of load and user activities. Without further ado, let us understand it bit by bit. This article sets out to explain the differences between the two terms and provides best practices for each, so you are prepared the next time you load test your website or web application.

Concurrent vs. Simultaneous Users

 

Concurrent Users

The word “concurrent” refers to the actions and events that occur over a specific timeframe, or an observation period. That means concurrent users are the ones who are connected to your website or applications over a time period, regardless of the activities they perform or requests they make. When we talk about concurrent users in load testing, they are the virtual users that are connected, or “hitting,” your site or application, but not at all at the same time and not carrying out the same tasks or transactions. For example, you might set up a test with different virtual users carrying out different objectives or transaction steps.

 

Simultaneous Users

The word “simultaneous” refers to the actions and events that occur at a certain point in time. That means simultaneous users are the ones who are performing the same activity or transactions at the same time on your website or applications. If we put this in terms of a load testing example, you might want a couple of hundred users logging in to an application, searching for a product, and purchasing an item – all at the same time.

Let us better understand concurrent and simultaneous users from an example. Suppose you have an e-commerce website and there are 15,000 users who are doing something on your website for a certain observation hour, let us say noon to 1 p.m. During that hour, at 12:30 p.m., there are 1,000 users who made a checkout request.

In this case, concurrent users are 15,000 and simultaneous requests for checkout are 1,000. The following are some conclusions that we can draw from this example:

Simultaneous users are always a subset of concurrent users. That means the number of concurrent users will always be greater than the number of simultaneous users. It will be rare that they would be the same.

Concurrent users can be inactive or active, performing any activity.

Simultaneous users cannot be inactive. They must be active and perform the same transaction at the observation timestamp.

 

Concurrent Users vs. Simultaneous Users Testing

Understanding concurrent users and simultaneous users is the key to effective performance testing. If you create your performance tests without knowing the actual difference, you might end up calculating wrong benchmarks and fail the purpose of performance testing.

For instance, in our previous example, if you only create load tests for the number of visitors on your website, during a sales season, but do not create load tests for “checkout” transactions, many checkouts will fail, and you will suffer from huge revenue loss as well as credibility of your website.

 

Concurrent Users Testing

While doing performance testing for concurrent users, the following are a few things that you should consider while designing your tests:

  • Peak Traffic. Number of users that are connected to your website or application.
  • Resource Utilization. CPU, Bandwidth, Memory, Server Resources
  • Load Time. Website/individual page load time will get affected by concurrent users.
  • Soak Testing. Website/application performance over a longer duration of time with same number of concurrent users.
  • Third-party APIs. Test any third-party integrations for their load handling capacity.
  • Maximum Number of Database Connections. A database connection is required for different activities and transactions. More concurrent users may result in increased database connections, but not always.
  • Max HTTP Requests. Your server may be able to handle only so much of all types of HTTP requests.

 

Simultaneous User Testing

While carrying out performance testing for simultaneous users, the following are a few things that you should consider while designing your tests:

  • Page Load Time. Test your individual/important pages for simultaneous requests.
  • Critical User Transactions. Important transactions such as sign-in, checkout, add-to-cart, etc. should be tested for simultaneous users.
  • Third-party APIs. Test individual third-party transactions such as OTP, payment method, push notifications, etc., for simultaneous requests.
  • Database I/O. Test database performance for simultaneous read/write transactions.

 

Concurrent & Simultaneous User Load Testing

Using a platform like LoadView allows you to generate a fixed and adjustable load for virtually any test case. Before we explain more into how you can use the platform for your concurrent user and simultaneous user load, let us talk about some of the differentiators that make it one of the best load testing platforms. The platform offers some out-of-the-box load testing features that are useful for making test cases for concurrent and simultaneous user testing.

  • Website Load Testing. Peak traffic analysis for website load time, and resource utilization.
  • Web Page Load Testing. Simultaneous individual page requests for logins, shopping carts, forms, etc.
  • API Load Testing. Origin server API and third-party API requests.
  • Streaming Media Load Testing. Test streaming server performance for concurrent and simultaneous load.
  • Postman Collections. Upload Postman collections to test API performance against real-world traffic conditions.
  • JMeter Scripts. Run large-scale performance tests from a fully managed network against your existing JMeter scripts.

 

Concurrent vs. Simultaneous User Testing

Knowing the difference between concurrent vs. simultaneous users is essential for designing test cases and ensuring the correct outcomes. Concurrent users tell the number of users for a given test duration, while simultaneous users define the number of users performing the same transaction at any given point of time. For more information about how to translate website analytics into concurrent users for performance testing, read out Analytics to Concurrent Users Knowledge Base article.

LoadView is a cloud-based load testing tool that you can use for virtually any test case that involves testing concurrent users and simultaneous users for website and application performance. It can generate load using real browsers and devices from different geo locations for the most realistic test conditions and accurate results.

Try LoadView today and receive up to 5 free load tests to get started. Begin your LoadView trial now!