> ## Documentation Index
> Fetch the complete documentation index at: https://docs.abbyy.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Customizing timeouts in the Batch Monitor process

> Adjust the TimeSpan timeout variables in the FlexiCapture Batch Monitor process for UiPath, including EmptyQueueTimeoutDuration, to tune transaction throughput.

The following TimeSpan-type variables are used for specifying the timeout length in the **Batch Monitor** process:

| **Variable name**         | **Purpose**                                                                                                                                                                               | **Default value** |
| ------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------- |
| EmptyQueueTimeoutDuration | Length of time for which the next attempt to get a transaction from the Monitor Queue will be postponed when no documents are present in the queue                                        | 15 seconds        |
| VerificationStagePostpone | Length of time for which the next batch stage check will be postponed for the current transaction if the batch was in the Verification stage at the time of the check                     | 2 minutes         |
| OtherStagePostpone        | Length of time for which the next batch stage check will be postponed for the current transaction if the batch is not in any of the following stages: Processed, Exceptions, Verification | 1 minutes         |

Increasing the **VerificationStagePostpone** and **OtherStagePostpone** timeout values can increase the total processed transaction volume.

To modify the timeout values:

1. Open the **Batch Monitor** process in UiPath Studio, navigate to the **State Machine** area and expand the **Variables** pane.

2. Modify the value of the **EmptyQueueTimeoutDuration** variable to decrease or increase the time between attempts to get a transaction if the queue is empty.

3. If the **Batch Monitor** process cannot check the whole queue in time due to a large number of delayed transactions, increase the values of the **VerificationStagePostpone** and **OtherStagePostpone** variables.

   <Frame>
     <img src="https://mintcdn.com/abbyy/jk6a9TGm7KRcVxRI/images/flexi-capture/connectors/UiCon_42.png?fit=max&auto=format&n=jk6a9TGm7KRcVxRI&q=85&s=1be5d871a6248b5c23297495e4cd3f6a" alt="Screenshot of the Batch Monitor process State Machine in UiPath Studio with the Variables pane open, highlighting the OtherStagePostpone, EmptyQueueTimeoutDuration, and VerificationStagePostpone TimeSpan variables and their default values." width="623" height="481" data-path="images/flexi-capture/connectors/UiCon_42.png" />
   </Frame>

4. Once the changes have been made, publish the process to Orchestrator again.
