How to increase performance in PDQ Deploy & Inventory

Brock Bingham candid headshot
Brock Bingham|October 6, 2023
Dog drooling while reading content on laptop
Dog drooling while reading content on laptop

At PDQ, we make device management simple, secure, and pretty damn quick. But what if I told you we could kick that speed up a notch? While I generally tend to let sleeping dogs lie, more speed means more time for my leisure activities, like second breakfast and after-lunch naps. Let's look at several settings you can modify to increase the performance of PDQ Deploy & Inventory

We recommend backing up your Deploy and Inventory databases before making configuration changes. Database and backup settings can be found in both Deploy and Inventory under Options > Preferences > Database.

Best performance settings for PDQ Deploy

PDQ Deploy has several settings you can modify to ensure you get the best performance possible. However, it's essential to understand how each configuration change impacts your environment. Thoroughly test each setting to find the sweet spot that works best for your organization.

Modify your concurrent target limits

PDQ Deploy > Options > Preferences > Performance

The Concurrent Target Limits settings in PDQ Deploy determine the maximum number of deployments and total targets you can deploy to at any given time.

  • Concurrent Targets per Deployment: Determines the maximum number of computers a deployment can target.

  • Total Concurrent Targets: Determines the maximum number of concurrent targets at any given time.

For example, with the default Concurrent Targets per Deployment set to 8 and the Total Concurrent Targets set to 32, you can simultaneously send out four deployments targeting 8 computers each for 32 total targets.

Increasing these limits requires more system resources. If your PDQ console has enough RAM, CPU resources, and bandwidth to spare, try increasing these limits to 16 and 64, respectively, and then monitor your system usage. This allows for more simultaneous deployments without adding too much overhead.

Configure Concurrent Target Limit settings.

Set the best copy mode for your environment

PDQ Deploy > Options > Preferences > Performance

PDQ Deploy offers two different copy modes: Push and Pull.

  • Push: Sends deployment files from the console to the target. If the files don't reside on the console, the files are first copied to the console and then pushed to the target.

  • Pull: Targets pull the deployment files from the designated file source, such as a network share.

By default, PDQ Deploy is configured with the Push setting, which I recommend if you host all deployment files on the PDQ console. However, if you use a network file share to host your deployment files or utilize DFS to support remote sites, I recommend the Pull configuration because it can significantly increase performance.

Modify the Service Manager TCP Connection setting

PDQ Deploy > Options > Preferences > Performance

The Service Manager TCP Connection settings determine whether to use Transmission Control Protocol (TCP) or named pipes (NP) to manage RPC connections. While TCP is recommended and is configured as the default setting, environments not using TCP would benefit from disabling or shortening the timeout period of this setting.

This is a system-wide Windows setting. Changes made here impact other applications on the server that use remote service manager connections and Windows service control. This setting is also found in PDQ Inventory's preferences menu.

Clean up old deployments to shrink your database

PDQ Deploy > Options > Preferences > Deployments

An oversized PDQ Deploy database is a common culprit of performance loss. One of the easiest ways to put the database file on a diet is to decrease the deployment retention period using the Cleanup setting. Organizations with a high volume of deployments will likely benefit from a lower retention period, while organizations with a lower volume can safely increase the retention period.

Change the Scan After Deployment Scan Profile

PDQ Deploy > Options > Preferences > Deployments

By default, PDQ Inventory is configured to scan targets after deployments using the default Scan Profile. Unless changed, the default Scan Profile is the Standard Scan Profile, which collects more information than is often needed after a deployment. Changing the Scan After Deployment setting to the Applications Scan Profile ensures that after-deployment scans are completed much more quickly.

This setting can be configured globally or per package in the Preferences menu.

Ping devices to ensure they’re online before deployments

PDQ Deploy > Options > Preferences > Deployments

The Ping before deployment setting sends a ping to each target to ensure it's online before attempting to deploy to the target. With this setting configured, Deploy ignores offline targets instead of waiting for the SMB timeout, which can take up to 60 seconds before queuing up another target, significantly slowing down deployments.

Configure the Ping before deployment setting.

Regularly optimize your Deploy & Inventory databases

PDQ Deploy > Options > Preferences > Database

The Optimize Database option in PDQ Deploy & Inventory removes empty space for your databases left behind from deleted information. While the size of the empty space is minuscule, it can accumulate over time, which is why we recommend regularly optimizing your databases.

Best performance settings for PDQ Inventory

As with PDQ Deploy, PDQ Inventory has several settings that you can configure to increase its overall performance. Again, it's essential to test these configuration changes to ensure they have a positive impact on your environment.

Set the correct Heartbeat interval for your environment

PDQ Inventory > Options > Preferences > Network

The Heartbeat setting regularly sends a ping to managed devices to determine if a computer is offline or online in PDQ Inventory. The Heartbeat ping is sent to each endpoint every 300 seconds by default. If you manage a large number of devices, you should increase the Heartbeat interval to ensure Inventory has enough time to ping each device. For an environment with 2,000 endpoints, we recommend a Heartbeat interval of around 600 to 700 seconds.

Configure your Heartbeat interval setting.

Clean up old deployments

PDQ Inventory > Options > Preferences > PDQ Deploy

As with PDQ Deploy, PDQ Inventory also collects and retains deployment data for each device. By default, the Cleanup deployment older than setting is configured to 180 days, but if your Inventory database is too large, consider decreasing this setting.

Increase concurrent scans if you have the available resources

PDQ Inventory > Options > Preferences > Performance

The Concurrent Scans setting determines the maximum number of scans that can run simultaneously. Increasing this setting allows you to scan more devices concurrently but also requires more memory, CPU resources, and bandwidth from the system. Monitor your system resource usage as you increase this setting to identify the best configuration for your environment.

Ping devices before scanning them

PDQ Inventory > Options > Preferences > Scanning

As with the Ping before deployment setting, Ping before scanning identifies which computers are online by pinging them before initiating a scan. This setting can significantly lower the time it takes to scan your online managed devices.


If your device management solution is slowing you down, maybe it's time to make the switch. Try out PDQ Deploy & Inventory free for 14 days and discover why 9 out of 10 blue hedgehogs prefer the speed of PDQ.

Brock Bingham candid headshot
Brock Bingham

Born in the '80s and raised by his NES, Brock quickly fell in love with everything tech. With over 15 years of IT experience, Brock now enjoys the life of luxury as a renowned tech blogger and receiver of many Dundie Awards. In his free time, Brock enjoys adventuring with his wife, kids, and dogs, while dreaming of retirement.

Related articles