Skip to content

Edit campaigns with your AI

Ask your AI assistant to edit search campaign settings, ad text and keywords, and to add keywords, ad groups, ads and negative keywords, all paused.

Last updated: November 6, 2026

Your AI assistant edits the search campaigns you already have: their settings, ad text and keywords, and it adds keywords, ad groups, ads and negative keywords to them. There is no web form for these; the Campaigns page shows the result.

Your assistant shows you a preview of every change and makes it only after you confirm. Everything it adds starts paused, nothing is removed, and every change is added to the change log, where you can revert it (see the safety model).

Editing campaign settings through your AI assistant

Your assistant can change the settings of a Google Ads or Microsoft Ads search campaign, one or more sections at once. It reads the current settings with list_ad_entities, checks the change with preview_update_campaign_settings, and makes it with update_campaign_settings once you confirm. Try "Show the Brand campaign only on weekdays from 8 to 20, and bid 20% more on mobile" or "Add Germany and Austria to the Brand campaign and turn off search partners".

Settings you can change

  • Locations: the countries it targets (such as US or DE) and who sees the ads there: people in or interested in them, or only people in them. The countries you name replace its country targets; places you excluded stay as they are.
  • Networks: Search partners on or off. On Microsoft Ads this is kept per ad group, so it is set on all of the campaign's ad groups. Roasby never turns the Google Display Network on or off.
  • Tracking: the final URL suffix and tracking template, or remove either one.
  • Schedule: the days and hours ads show, each time slot with an optional bid adjustment (-90% to +900%).
    • Times are in quarter hours, in the ad account's time zone (Google Ads) or the campaign's (Microsoft Ads).
    • With no time slots, ads show all day, every day.
    • Google Ads takes 6 time slots a day; Microsoft Ads 7 a day and 49 in all.
    • Slots of one day may not overlap.
  • Devices: the bid adjustment for mobile, tablet and desktop, in percent: 20 bids 20% more, -30 bids 30% less, and -100 shows no ads on that device. Google Ads takes -90% to +900% (or -100%), Microsoft Ads -100% to +900%.
  • Rotation: Optimize (the platform prefers the ads it expects to do best) or Rotate evenly. Both platforms keep it per ad group, so it is set on all of the campaign's ad groups.
  • Languages (Microsoft Ads only): the languages of the people the ads show to; none means every language. Google Ads search campaigns have no language targeting: Google matches each search's language itself.

The preview shows each section before and after, what the guardrails limit or refuse, and anything only the ad platform can do. If the settings change before you confirm, your assistant previews the change again.

All sections change together as one Settings changed entry in the change log. Reverting it puts back every section it changed (refused if one of them changed again since).

When new countries include EU countries on Google Ads and the campaign has not declared whether it contains EU political advertising, the preview asks you to declare it in Google Ads.

Bid adjustments

Bid adjustments count like bids, because they raise what you pay:

  • Devices and time slots multiply, so Roasby checks each device in each hour of the week that shows ads. The device adjustment times the hour's adjustment (as multipliers, +20% is 1.2) may rise at most your account's max bid change per step. At a 50% step, mobile +0% may go to +50%, or mobile +20% with Mondays at +25%, but not both to +50%.
  • A device with no ads (-100%), or hours the schedule left out, come back at 0% at most in one step; a rise past that is a later step.
  • No schedule means every hour at 0%, so taking a schedule away counts as a rise for hours that ran lower or ran no ads.
  • Lowering an adjustment and switching a device off are always allowed.

A rise past that is refused, naming each device and time slot, unless you ask your assistant to limit the bid adjustments to the largest step the guardrails allow. Roasby then lowers each rise as far as needed and lists them (a schedule that would rise too far when taken away stays for now), so you can make the next step once the change is applied. See Bid adjustments for the exact rule.

Editing ad text through your AI assistant

Your assistant can change the text of a responsive search ad on Google Ads or Microsoft Ads in place: the ad keeps its status, its history and its results. The ad platform reviews the new text again, so the ad may show as under review until it is approved.

It reads the ads' text with list_ad_entities, checks the edit with preview_update_ads, and makes it with update_ads once you confirm. Try "Rewrite the second headline of the Trail ad and pin it to position 1" or "Change 'Fast shipping' to 'Fast delivery' in every ad of the Running shoes campaign".

You can change:

  • Headlines (3 to 15) and descriptions (2 to 4), each shown in any position or pinned to one (headlines 1 to 3, descriptions 1 to 2).
  • Display path 1 and Display path 2, and the final URL the ad links to. A display path can also be removed.

What you change follows the same rules as every new ad (see Adding responsive search ads), and none of it may be left empty; what you leave as it is is never checked again. Keyword insertion such as {KeyWord:Trail shoes} counts by its default text.

Find and replace

A find and replace changes the same text in many ads at once: in every responsive search ad of an ad group, a campaign or an ad account, or in the ads you name.

  • The text is found exactly as it is, spaces included (it is never a pattern).
  • The replacement can be empty to take the text away.
  • You can limit it to headlines and descriptions, display paths or the final URL, and choose whether letter case must match.
  • Ads without the text stay as they are.

Preview and revert

The preview shows each ad's text before and after. An ad whose new text breaks a rule (too long, two headlines the same, a headline left empty) is refused on its own with the reason; the others can still change. If an ad's text changes before you confirm, your assistant previews the edit again.

The ads change together as one entry in the change log (Ads edited), which shows each part before and after (Ad text changed). Reverting it, or one ad of it, writes the old text back (refused if the ad's text changed again since).

Editing keywords through your AI assistant

Your assistant can change a keyword on Google Ads or Microsoft Ads:

  • its text;
  • its match type;
  • its own final URL (the page it links to instead of its ads' final URLs), or take that final URL away so the ads' final URLs are used again.

It checks the change with preview_update_keywords and makes it with update_keywords once you confirm. Try "Make every broad match keyword in the Trail ad group phrase match" or "Change the keyword 'cheap trail shoe' to 'affordable trail shoes' and send it to our sale page".

How the change is made depends on the ad platform:

  • A final URL changes in place on both platforms: the keyword keeps its status, its history and its results.
  • A match type changes in place on Microsoft Ads. Google Ads can't change it, so Roasby replaces the keyword.
  • A new text replaces the keyword on both platforms.

When a keyword is replaced

A replace adds the new keyword to the same ad group, paused, with the old keyword's own bid and final URL (unless you change the final URL), and pauses the old one. Nothing is removed.

  • Until you enable the new keyword, the keyword shows no ads.
  • The new keyword starts without the old one's history (no Quality Score data yet).
  • Enable the new keyword on the Campaigns page or through your assistant when you are ready: your assistant offers to.

Preview, refusals and revert

The preview shows each keyword before and after, which ones are replaced, and the ones refused with the reason. Letter case and spacing alone change nothing. A change is refused when:

  • the ad group already has a keyword with the new text and match type (enable that one instead: the preview names it);
  • a negative keyword of the ad group or campaign blocks the new text;
  • the new text breaks the platform's keyword rules;
  • or the copied bid is above your max bid.

If a keyword changes before you confirm, your assistant previews the change again.

The keywords change together as one entry in the change log (Keywords changed), which shows each keyword as Keyword replaced or Keyword changed with each part before and after. Reverting it, or one keyword of it, pauses the new keyword and gives the old one its status back, or sets a change in place back (refused if either keyword changed again since).

Adding keywords through your AI assistant

Your assistant can add many keywords to an ad group you already have, on Google Ads and Microsoft Ads search campaigns. Like creating campaigns, this is done only through your assistant. Each keyword has its text (in any language), a match type and, if you want, its own max bid and its own landing page; without them it uses the ad group's bid and the ad's landing page.

  • Each keyword is checked on its own. The preview lists the keywords that will be added and every refused one with the reason. Only the keywords that pass are added. A keyword is refused when it is:
    • longer than the ad platform takes (80 characters and 10 words on Google Ads, 100 characters on Microsoft Ads);
    • using a character Google Ads doesn't take in keywords (such as ! or ?), or written as [exact] or "phrase" (the match type goes in its own field);
    • the same keyword twice in the list;
    • a keyword the ad group already has with that match type (enabled or paused; a removed one can be added again);
    • blocked by a negative keyword on the ad group or its campaign, which would stop it from ever showing ads: a broad negative blocks keywords that have all its words, in any order; a phrase negative those that have its words in that order; an exact negative the same words;
    • a bid above the account's max bid, once one is set under Guardrails;
    • or a bid on a campaign with automated bidding.
  • Every new keyword starts paused, even in an ad group that is running, so nothing changes until you say so. Your assistant then offers to enable exactly those keywords, with one more preview and confirmation.
  • One change. The keywords are one batch: one entry in the change log (Keywords added to the ad group, with how many), which opens to each keyword and its result. Revert batch pauses the keywords it added; keywords are never removed. Keywords that are still paused have nothing to revert.
  • One add at a time runs per ad group: wait until it is applied before you add more there.

To find keywords worth adding, ask your assistant for keyword research.

Adding ad groups through your AI assistant

Your assistant can add ad groups to a search campaign you already have, on Google Ads and Microsoft Ads. Like creating campaigns, this is done only through your assistant. Each ad group has a name (in any language), a default max bid, and, if you want, its keywords (as when you add keywords), its negative keywords and up to 3 responsive search ads (with the same rules as every new ad, below). An ad group without an ad shows no ads.

  • Each ad group is checked with everything in it. The preview lists the ad groups that will be added and every refused one with the reason and the part that breaks the rule, for example the keyword that is too long. Only the ad groups that pass are added, each one whole. An ad group is refused when:
    • its name is too long (254 characters on Google Ads, 255 on Microsoft Ads);
    • the campaign already has an ad group with that name (enabled or paused; letter case and spacing don't count, and a removed ad group's name can be used again), or another ad group in the list has it;
    • the campaign would have more than 20,000 ad groups;
    • its bid breaks the rules below;
    • one of its keywords would be refused when you add keywords;
    • one of its keywords is blocked by one of its own negative keywords or a negative keyword of the campaign (by the negative's match type, as above);
    • one of its negative keywords breaks the keyword rules (such as a %), which would make the platform refuse the whole change;
    • or one of its negative keywords is broad match on Microsoft Ads.
  • Bids. On a campaign that uses the bids you set (manual cost per click, or enhanced cost per click on Microsoft Ads), every new ad group needs a default bid, within the account's max bid once one is set under Guardrails. On a campaign with automated bidding, the ad group and its keywords take no bids.
  • Every new ad group starts paused, even in a campaign that is running.
    • Its keywords and ad are created ready under it, so enabling the ad group alone starts it once its campaign runs.
    • Your assistant then offers to enable exactly those ad groups, with one more preview and confirmation.
    • Roasby doesn't enable any ad group (new or not) whose default bid, or the own bid of an enabled keyword in it, is above the account's max bid.
    • A new ad group in a campaign whose bidding Roasby hasn't synced yet is refused until the next sync.
  • One change. The ad groups are one batch: one entry in the change log (Ad groups added to the campaign, with how many), which opens to each ad group with its counts of keywords, negative keywords and ads, and its result. Revert batch pauses the ad groups it added; ad groups are never removed. Ad groups that are still paused have nothing to revert.
  • Every part counts. Each ad group, keyword, negative keyword and ad counts toward the number of items your workspace can change in one batch.
  • On Microsoft Ads, an ad group is created step by step.
    • If a later step fails (for example its ad), the change fails with the reason, and the ad group stays paused on the Campaigns page with what was made.
    • Finish it in Microsoft Ads (with its ad), and once Roasby's next sync shows its ad you or your assistant can enable it; or add it again under another name.
    • A new Microsoft Ads ad group shows on Microsoft's own search network only; turn on search partners for it in Microsoft Ads if you want them.
  • One add at a time runs per campaign: wait until it is applied before you add more there.

Adding responsive search ads through your AI assistant

Your assistant can add responsive search ads to ad groups you already have, in search campaigns on Google Ads and Microsoft Ads. Like creating campaigns, this is done only through your assistant.

Rules for every new ad

Every ad Roasby creates, in a new campaign, a new ad group or an ad group you have, follows the same rules:

  • Headlines and descriptions. 3 to 15 headlines of up to 30 characters and 2 to 4 descriptions of up to 90, in any language. Characters of Chinese, Japanese and Korean, full-width characters and emoji count as two, so a headline holds 15 of them. Headlines must differ from each other (letter case and spacing don't count), and so must descriptions.
  • Pinning. You can pin a headline to position 1, 2 or 3 and a description to position 1 or 2, so it always shows there.
    • Pinned headlines and descriptions show only in their position, so every other position needs one of its own: keep at least as many unpinned headlines as headline positions nothing is pinned to, and the same for descriptions.
    • Two headlines pinned to position 1 with one unpinned is refused, since positions 2 and 3 would share one headline.
    • Pinning is allowed but lowers the ad's strength, since the ad platform can test fewer combinations: pin only text that must show, and pin 2 or 3 headlines to a position rather than one.
  • Display paths and tracking. Two optional display paths of up to 15 characters each (no spaces or slashes; the second only with the first), the https page the ad links to, and optionally a final URL suffix with tracking parameters such as utm_source=google, without a leading ?.

How new ads are added

  • Each ad is checked on its own. The preview lists the ads that will be added and every refused one with the reason and the part that breaks the rule, for example the headline that is too long. Only the ads that pass are added.
  • Every new ad starts paused, even in an ad group that is running. Your assistant then offers to enable exactly those ads, with one more preview and confirmation. An ad group runs at most 3 enabled responsive search ads, so enabling a fourth is refused: pause one of the others first.
  • Policy review. The ad platform still reviews every new ad against its advertising policies. If it refuses an ad, the change log says why in plain words. Change the wording and add the ad again; Roasby never asks for a policy exception, which only the ad platform's own website can request. See Policy review.
  • One change. The ads are one batch: one entry in the change log (Ads added, with how many), which opens to each ad by its first headline and its result. Revert batch pauses the ads it added; ads are never removed. Ads that are still paused have nothing to revert.
  • One add at a time runs per ad group: wait until it is applied before you add more there.

Negative keywords

A negative keyword on a campaign or an ad group stops its ads from showing for that search. Each has a match type: exact excludes only that search, phrase also searches that contain it, broad searches with all its words (Google Ads only: Microsoft Ads has exact and phrase negative keywords).

  • To exclude searches people already made, open the Search terms page: it shows which searches are worth excluding, and Exclude adds one or several of them.
  • For any other negative keywords, ask your assistant. It checks them with preview_add_negative_keywords and adds them with add_negative_keywords once you confirm. Try "Add 'jobs' and 'repair' as phrase match negative keywords to the Running shoes campaign".

Negative keywords the campaign or ad group already has stay as they are. On Microsoft Ads, if some keywords are refused, the others are still added, and the change log names the refused ones and why. Reverting the change takes away exactly the negative keywords it added, never ones that were there before.

App campaigns and their ad groups do not take negative keywords.

Ask your AI assistant

Every edit takes two steps: a preview tool shows the change and the guardrails, you confirm, then the write tool applies it.

  • Settings: preview_update_campaign_settings with only the sections to change (it reads the current ones in list_ad_entities), then update_campaign_settings.
  • Ad text: it reads the text in list_ad_entities, then uses preview_update_ads (the parts that change for each ad, or a find and replace across an ad account, campaign or ad group), then update_ads.
  • Keywords: to change keywords' text, match type or own final URL, preview_update_keywords, then update_keywords. A replaced keyword's new keyword starts paused, and it offers to enable it with preview_enable_entities once the change is applied.
  • New keywords: preview_add_keywords, then add_keywords. The keywords are added paused, and it can enable them with preview_enable_entities.
  • New ad groups: preview_add_ad_groups, then add_ad_groups. The ad groups are added paused with their keywords and ads, and it can enable them with preview_enable_entities.
  • New ads: preview_add_responsive_search_ads, then add_responsive_search_ads. The ads are added paused, and it can enable them with preview_enable_entities.
  • Negative keywords: preview_add_negative_keywords, then add_negative_keywords.

Try:

  • "Add three ad groups to the Running shoes campaign: trail, road and kids, each with its keywords and an ad"
  • "Add these 30 keywords as phrase match to the Running shoes ad group"
  • "Add a second ad to the Trail ad group, with our brand name pinned as the first headline"
  • "Change 'Free shipping' to 'Free delivery' in every ad of the Running shoes campaign"

Limitations

  • Roasby can't edit ad types other than responsive search ads. Do that in the ad platform itself.
  • Campaign settings:
    • search campaigns only, and only once Roasby has read them (after a sync);
    • countries only: a campaign that also targets regions, cities or a radius keeps its locations, which you change in the ad platform;
    • excluded places, location bid adjustments, the Google Display Network and Google's connected TV adjustment aren't edited;
    • Google Ads takes 6 schedule time slots a day, Microsoft Ads 7 a day and 49 in all; time slots run in quarter hours;
    • bid adjustments: -90% to +900% for a time slot, and for a device -100% (no ads) or -90% to +900% on Google Ads, -100% to +900% on Microsoft Ads; a rise is limited to your max bid change per step, for each device in each scheduled hour;
    • ad rotation (and on Microsoft Ads search partners) is set on every ad group the campaign has now, so it needs the campaign's ad groups synced; ad groups added later get the platform's default;
    • a section someone changed in the ad platform since Roasby last read it is not sent: Roasby reads the account again and the change log says which, so you can review it once more;
    • on Microsoft Ads the sections are sent one after another: new countries are added before the old ones are taken away, and if the platform refuses a new schedule, Roasby puts the old time slots back (and alerts its team if it cannot);
    • if the platform refuses a section, the ones before it stay applied, and the change log says which;
    • Google Ads search campaigns have no language targeting.
  • Ad text:
    • responsive search ads only, once Roasby has read their text (after a sync);
    • headlines, descriptions, their pins, display paths and the final URL; an ad's own final URL suffix and a second final URL are kept as they are;
    • one edit at a time runs per ad;
    • a find and replace looks at up to 10,000 ads; narrow it to a campaign, an ad group or some ads;
    • an ad someone changed in the ad platform since Roasby last read it is not changed: Roasby reads the account again, and you review the change once more;
    • the ad platform reviews the new text again; a policy review or exception is only in its own website.
  • Keywords:
    • only in search campaigns, once Roasby has read their own final URL (after a sync);
    • a new text, and a new match type on Google Ads, replace the keyword: the new one is added paused and starts without history, and the old one is paused, never removed;
    • one change at a time runs per keyword;
    • a keyword someone changed in the ad platform since Roasby last read it is not changed in place: Roasby reads the account again, and you review the change once more.
  • New keywords:
    • at most 80 characters and 10 words on Google Ads and 100 characters on Microsoft Ads, without the characters Google Ads refuses;
    • only on search campaigns;
    • at most 20,000 keywords and negative keywords in one ad group;
    • there is no web page for adding keywords: ask your assistant.
  • New ad groups:
    • only in search campaigns, with a name of up to 254 characters on Google Ads and 255 on Microsoft Ads;
    • at most 100 ad groups in one request, 1,000 keywords, 100 negative keywords and 3 responsive search ads each;
    • at most 20,000 ad groups in one campaign, and at most 10,000 items in one request;
    • ad groups have no start or end dates of their own on Google Ads (only campaigns do), so Roasby doesn't set them;
    • there is no web page for adding ad groups: ask your assistant.
  • New responsive search ads:
    • only in ad groups of search campaigns, at most 100 ads in one request, created paused;
    • at most 3 enabled ones per ad group, and at most 100 ads (enabled and paused) in one Microsoft Ads ad group;
    • characters of Chinese, Japanese and Korean and emoji count as two toward the character limits;
    • a policy review or exception for a refused ad is only in the ad platform's own website;
    • there is no web page for adding ads: ask your assistant.
  • Microsoft Ads: there are no broad match negative keywords.
  • ChatGPT Ads: no keywords or negative keywords (adding keywords is refused there), no new ad groups in an existing campaign, no responsive search ads (and no ad text edits).
  • A batch changes one ad account at a time, with only so many items in one batch; split larger ones.
  • Roasby never deletes anything: pause instead.

See every limit by platform on Limitations.

Try it on your own ad account

Connect an account and ask your first question in a few minutes.

Start free