> For the complete documentation index, see [llms.txt](https://help.paintscout.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://help.paintscout.com/support/beta-guides/bulk-product-swap-beta-guide.md).

# Bulk Product Swap Beta Guide

The Swap Products feature lets you replace products across an entire estimate or selected items.

<p align="center"><a href="https://5nj1jy.share-na3.hsforms.com/2eZUSoSvdRfGr2Xi5blEREA" class="button primary" data-icon="unlock">Join Beta</a></p>

{% hint style="info" icon="circle-info" %}
This feature is currently in active development. You may encounter bugs, missing functionality, or things that don't work quite as expected. We're actively making improvements and would love your feedback if you run into anything!

Feel free to reach out to us at <product@paintscout.com>
{% endhint %}

<figure><img src="/files/TKkogKV18JFTMZsYguHo" alt=""><figcaption></figcaption></figure>

***

## How to Swap Products <a href="#h_a8a9d56b48" id="h_a8a9d56b48"></a>

{% stepper %}
{% step %}

### Choose what you want to update

* **Entire estimate:** Use **Swap Products** at the top of the estimate table. This replaces the product everywhere it appears.

<figure><img src="/files/hIlG1oLcBdujglBjrDmk" alt="" width="563"><figcaption></figcaption></figure>

* **Selected items:** Select areas, surfaces, or line items. Then use **Swap Products** in the blue action bar. This affects only your selection.

{% hint style="info" %}
After you select items, the estimate-wide **Swap Products** option disappears. This prevents accidental estimate-wide changes.
{% endhint %}

<figure><img src="/files/sZIl65DOoaNQL1EleFgR" alt=""><figcaption></figcaption></figure>
{% endstep %}

{% step %}

### Open the Swap Products dialog

Once you've made your selection, open the Swap Products dialog.

<figure><img src="/files/tIUhA5BiLKmUu5qMzMN7" alt=""><figcaption></figcaption></figure>
{% endstep %}

{% step %}

### Define your swap pairs

In the dialog, set up one or more swap pairs. For each pair:

* From — the product currently on the estimate that you want to replace
* To — the replacement product from your product library

Both dropdowns show helpful context for each product: substrate count, line item count, and volume. Archived products are excluded from both dropdowns.

You can add as many swap pairs as you need and apply them all at once.

Note: If the estimate has no products, the dialog will show a warning asking you to add products before proceeding.
{% endstep %}

{% step %}

### Confirm

Click to apply the swaps. Selected-item swaps affect only selected substrates and line items. Estimate-wide swaps affect every matching product. A single recalculation runs after all swaps are applied.
{% endstep %}
{% endstepper %}

<figure><img src="/files/sTKztzZE8A8HmuJuG5AF" alt=""><figcaption></figcaption></figure>

***

### Things to Know <a href="#h_e1c7c9ce20" id="h_e1c7c9ce20"></a>

* Swaps are 1-to-1. Each swap replaces one specific product with one replacement. Partial or conditional replacements are not supported.
* No validation on swap pairs. It's your responsibility to select an appropriate replacement product.
* Recalculation happens once— after all swaps in the operation are applied. Not after each individual swap.
* Archived products cannot be swapped. They won't appear in either the From or To dropdowns.
* Swaps cannot be undone. Once applied, there is no way to reverse the action, so double-check your swap pairs before confirming.
* Selected-item swaps use the blue action bar. The estimate-wide option is unavailable while items are selected.

***

## FAQ

<details>

<summary>Can I swap a product on just part of an estimate?</summary>

Yes. Select only the specific areas, surfaces, or line items you want to affect before opening the dialog. Unselected items will not be changed.

</details>

<details>

<summary>Can I swap a product across the entire estimate?</summary>

Yes. Clear any item selections, then use **Swap Products** at the top of the estimate table. Every matching product on the estimate will be changed.

</details>

<details>

<summary>Can I swap multiple products at once?</summary>

The dialog supports multiple swap pairs in a single operation. Define as many from/to pairs as you need, then apply them all at once.

</details>

<details>

<summary>Will the swap affect archived products?</summary>

No. Archived products are excluded from both dropdowns and cannot be selected as a source or target.

</details>

<details>

<summary>What if my estimate has no products?</summary>

The dialog will display a warning prompting you to add products to your estimate first.

</details>

<details>

<summary>Will my estimate be recalculated after the swap?</summary>

Yes. A single recalculation runs after all swaps are complete.

</details>

<details>

<summary>What if I swapped the wrong product?</summary>

Swaps cannot be undone. Review your swap pairs carefully before confirming.

</details>

***

## Thanks for Trying the Beta! <a href="#h_a1cb63cea7" id="h_a1cb63cea7"></a>

We're excited to have you trying out this new feature. Since this is actively in development, your feedback is incredibly valuable as we continue to improve.

If you have questions, run into issues, or just want to share your thoughts, please reach out anytime at <product@paintscout.com>

Thanks for helping shape what's next!

&#x20;&#x20;


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://help.paintscout.com/support/beta-guides/bulk-product-swap-beta-guide.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
