# Change Ad Bids

Source: https://docs.launchfastlegacyx.com/mcp/ads-changes/set-ad-bids

Change bids on Sponsored Products keywords and product targets from your AI app. Changes apply right away, and you can ask your AI app to undo a change.

> **This tool changes your Amazon Ads account**
> `set_ad_bids` changes bids in your Amazon Ads account. Changes apply right away in your Amazon Ads account. Launch Fast records each change with what changed, when, and which AI app made it. To undo a change, ask your AI app to undo it. It uses [`undo_ad_change`](https://docs.launchfastlegacyx.com/mcp/ads-changes/undo-ad-change). Launch Fast tells the assistant to confirm each change with you first, unless you named the change exactly. Your AI app may also ask before it runs a change tool.

| Field             | Value                                                                                                                                             |
| ----------------- | ------------------------------------------------------------------------------------------------------------------------------------------------- |
| MCP tool          | `set_ad_bids`                                                                                                                                     |
| Behavior          | Makes a change in your Amazon Ads account. Destructive: the new bid replaces the old bid.                                                         |
| Cost              | Free                                                                                                                                              |
| Permission        | **Change Amazon Ads** (Amazon Ads tools). Amazon verification is necessary.                                                                       |
| Sign-in           | OAuth only. API keys cannot make Ads changes. Your last Amazon verification (the code from your authenticator app) must be from the last 30 days. |
| Ad type           | Sponsored Products only                                                                                                                           |
| Amazon connection | Amazon Ads                                                                                                                                        |
| App view          | None. The assistant shows the result as text and a table.                                                                                         |

## What It Does

`set_ad_bids` sets new bids on Sponsored Products keywords and product targets. One call takes up to 50 bids. All bids in one call must be raises, or all must be cuts. Put raises and cuts in separate calls.

## When To Use It

Use it when you decide to raise or cut bids, for example after a [targeting report](https://docs.launchfastlegacyx.com/mcp/ads/targeting-performance) or an [Ads diagnostic](https://docs.launchfastlegacyx.com/mcp/ads/ads-diagnostics). To stop a keyword, use [`set_ad_status`](https://docs.launchfastlegacyx.com/mcp/ads-changes/set-ad-status).

## Inputs

| Input             | Required                                                      | Values                                                                                                           | Example                              |
| ----------------- | ------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------- | ------------------------------------ |
| `bids`            | Yes                                                           | A list of 1 to 50 bids. All raises or all cuts.                                                                  | See the rows below                   |
| `bids[].campaign` | Yes                                                           | The campaign name, or its `campaign_id`                                                                          | `SP Garlic Exact`                    |
| `bids[].keyword`  | Yes                                                           | The keyword text, a product target ASIN, or an auto targeting group                                              | `garlic press`                       |
| `bids[].match`    | When the keyword has more than one match type in the campaign | `exact`, `phrase`, or `broad`                                                                                    | `exact`                              |
| `bids[].ad_group` | When the keyword is in more than one ad group                 | The ad group name                                                                                                | `Garlic Press Exact`                 |
| `bids[].bid`      | Yes                                                           | The new bid, more than 0. A number or text such as "$0.85".                                                      | `0.85`                               |
| `marketplace`     | No                                                            | Two letters, such as `US`, `CA`, `UK`, or `DE`. Give it only when you advertise in more than one marketplace.    | `US`                                 |
| `reason`          | No                                                            | One line on why, up to 300 characters. Launch Fast saves it with the change. The default is "Asked for in chat." | `Cut bids on keywords over 60% ACOS` |

## How To Name Campaigns And Keywords

* A campaign: its name as the Ads reports show it, or its `campaign_id`.
* A keyword: its text and its match type (`exact`, `phrase`, or `broad`). Give the match type when the keyword is in the campaign with more than one.
* A product target: its ASIN.
* An auto targeting group: `close match`, `loose match`, `substitutes`, or `complements`.
* An ad group: its name. Give it only when the keyword is in more than one ad group.

## What The Answer Contains

* A status: `applied`, `partly applied`, `not applied`, `going through`, or `unconfirmed`.
* A table with one row for each change: what changed, the old and new bid, and the result.
* The change id (it starts with `ac-`). Use it with [`get_ad_changes`](https://docs.launchfastlegacyx.com/mcp/ads-changes/get-ad-changes) and [`undo_ad_change`](https://docs.launchfastlegacyx.com/mcp/ads-changes/undo-ad-change).
* Notes about large changes, and the currency when it is not USD.
* The day that the result is due. Ask for it then with [`get_ad_changes`](https://docs.launchfastlegacyx.com/mcp/ads-changes/get-ad-changes). Launch Fast compares the two weeks before the change with the two weeks after it, so the result shows about three weeks later.

| Status           | Meaning                                                                                                                                                                                                                                                              |
| ---------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `applied`        | All changes reached Amazon Ads.                                                                                                                                                                                                                                      |
| `partly applied` | Some changes reached Amazon Ads. The table shows what happened to the rest.                                                                                                                                                                                          |
| `not applied`    | Nothing changed in Amazon Ads. The table shows why.                                                                                                                                                                                                                  |
| `going through`  | Amazon was still applying the change when the answer came back. The answer waits up to 45 seconds. Launch Fast keeps applying the change, and if the call was cut off, it carries the change on within about 15 minutes. Check it in a minute with `get_ad_changes`. |
| `unconfirmed`    | Amazon accepted the change but then showed a different value. Check the value in Amazon Ads before you change it again.                                                                                                                                              |

## Example Prompts

```text
Cut the bid on "garlic press" exact match in SP Garlic Press to $0.85.
```

```text
Lower the bids on my five keywords with the highest ACOS by 20%.
```

```text
Raise the bid on my best-selling exact-match keyword by 10 cents.
```

## Common Errors

| Error                                              | What it means                                                                                                                                               | What to do                                                                                                                                                       |
| -------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `invalid_input`: raises and cuts in separate calls | The call raises some bids and cuts others.                                                                                                                  | Make one call with the raises and one call with the cuts.                                                                                                        |
| `invalid_input`: more than 50 items                | The call has more than 50 bids.                                                                                                                             | Put the rest in another call.                                                                                                                                    |
| `invalid_input`: listed twice                      | One keyword has two bids in the call.                                                                                                                       | Give each keyword one bid.                                                                                                                                       |
| `invalid_input`: say which marketplace             | You advertise in more than one marketplace.                                                                                                                 | Add `marketplace`, such as `US`.                                                                                                                                 |
| `invalid_input`: archived campaign                 | Amazon cannot change an archived campaign.                                                                                                                  | Choose a campaign that is not archived.                                                                                                                          |
| `not_found`                                        | No Sponsored Products campaign has that name, or the keyword is not in the campaign. The answer lists similar campaign names, or keywords in that campaign. | Use a name from the answer, or find it with [`amazon_ads_entity_graph_lookup`](https://docs.launchfastlegacyx.com/mcp/ads/entity-graph).                                                           |
| `oauth_required`                                   | You connected Launch Fast with an API key. API keys cannot change Amazon Ads.                                                                               | Add Launch Fast as a connector in your AI app and sign in. See [Getting started](https://docs.launchfastlegacyx.com/mcp/getting-started).                                                          |
| `mfa_required`                                     | Your last Amazon verification is more than 30 days old, or Amazon access for this app ended.                                                                | Connect the app again and enter your authenticator code on the Launch Fast sign-in page. See [Authentication](https://docs.launchfastlegacyx.com/mcp/authentication#how-long-amazon-access-lasts). |
| `not_enabled`                                      | Ad changes through Launch Fast are paused for now, or Amazon access for the app needs a fresh verification. The message says which.                         | For a fresh verification, verify again in [Settings > MCP & API keys](https://launchfastlegacyx.com/settings/mcp). For a pause, make the change in Amazon Ads.   |
| `busy`                                             | Another change on this Amazon Ads account is in progress.                                                                                                   | Wait a minute and try again. Check the change with [`get_ad_changes`](https://docs.launchfastlegacyx.com/mcp/ads-changes/get-ad-changes).                                                          |
| Rate limit: `amazon_ads rate limit exceeded`       | Your account made more than 10 Ads change calls in one minute. The limit counts all the change tools together.                                              | Wait the number of seconds in the message, then try again.                                                                                                       |

## Related Tools

* [`amazon_ads_targeting_performance_lookup`](https://docs.launchfastlegacyx.com/mcp/ads/targeting-performance) shows bids, ACOS, and ROAS for each target.
* [`get_ad_changes`](https://docs.launchfastlegacyx.com/mcp/ads-changes/get-ad-changes) shows the change and its result.
* [`undo_ad_change`](https://docs.launchfastlegacyx.com/mcp/ads-changes/undo-ad-change) puts the old bids back.