universo-virtual.com

buytrendz.net

thisforall.net

benchpressgains.com

qthzb.com

mindhunter9.com

dwjqp1.com

secure-signup.net

ahaayy.com

soxtry.com

tressesindia.com

puresybian.com

krpano-chs.com

cre8workshop.com

hdkino.org

peixun021.com

qz786.com

utahperformingartscenter.org

maw-pr.com

zaaksen.com

ypxsptbfd7.com

worldqrmconference.com

shangyuwh.com

eejssdfsdfdfjsd.com

playminecraftfreeonline.com

trekvietnamtour.com

your-business-articles.com

essaywritingservice10.com

hindusamaaj.com

joggingvideo.com

wandercoups.com

onlinenewsofindia.com

worldgraphic-team.com

bnsrz.com

wormblaster.net

tongchengchuyange0004.com

internetknowing.com

breachurch.com

peachesnginburlesque.com

dataarchitectoo.com

clientfunnelformula.com

30pps.com

cherylroll.com

ks2252.com

webmanicura.com

osostore.com

softsmob.com

sofietsshotel.com

facetorch.com

nylawyerreview.com

apapromotions.com

shareparelli.com

goeaglepointe.com

thegreenmanpubphuket.com

karotorossian.com

publicsensor.com

taiwandefence.com

epcsur.com

odskc.com

inzziln.info

leaiiln.info

cq-oa.com

dqtianshun.com

southstills.com

tvtv98.com

thewellington-hotel.com

bccaipiao.com

colectoresindustrialesgs.com

shenanddcg.com

capriartfilmfestival.com

replicabreitlingsale.com

thaiamarinnewtoncorner.com

gkmcww.com

mbnkbj.com

andrewbrennandesign.com

cod54.com

luobinzhang.com

bartoysdirect.com

taquerialoscompadresdc.com

aaoodln.info

amcckln.info

drvrnln.info

dwabmln.info

fcsjoln.info

hlonxln.info

kcmeiln.info

kplrrln.info

fatcatoons.com

91guoys.com

signupforfreehosting.com

faithfirst.net

zjyc28.com

tongchengjinyeyouyue0004.com

nhuan6.com

oldgardensflowers.com

lightupthefloor.com

bahamamamas-stjohns.com

ly2818.com

905onthebay.com

fonemenu.com

notanothermovie.com

ukrainehighclassescort.com

meincmagazine.com

av-5858.com

yallerdawg.com

donkeythemovie.com

corporatehospitalitygroup.com

boboyy88.com

miteinander-lernen.com

dannayconsulting.com

officialtomsshoesoutletstore.com

forsale-amoxil-amoxicillin.net

generictadalafil-canada.net

guitarlessonseastlondon.com

lesliesrestaurants.com

mattyno9.com

nri-homeloans.com

rtgvisas-qatar.com

salbutamolventolinonline.net

sportsinjuries.info

topsedu.xyz

xmxm7.com

x332.xyz

sportstrainingblog.com

autopartspares.com

readguy.net

soniasegreto.com

bobbygdavis.com

wedsna.com

rgkntk.com

bkkmarketplace.com

zxqcwx.com

breakupprogram.com

boxcardc.com

unblockyoutubeindonesia.com

fabulousbookmark.com

beat-the.com

guatemala-sailfishing-vacations-charters.com

magie-marketing.com

kingstonliteracy.com

guitaraffinity.com

eurelookinggoodapparel.com

howtolosecheekfat.net

marioncma.org

oliviadavismusic.com

shantelcampbellrealestate.com

shopleborn13.com

topindiafree.com

v-visitors.net

qazwsxedcokmijn.com

parabis.net

terriesandelin.com

luxuryhomme.com

studyexpanse.com

ronoom.com

djjky.com

053hh.com

originbluei.com

baucishotel.com

33kkn.com

intrinsiqresearch.com

mariaescort-kiev.com

mymaguk.com

sponsored4u.com

crimsonclass.com

bataillenavale.com

searchtile.com

ze-stribrnych-struh.com

zenithalhype.com

modalpkv.com

bouisset-lafforgue.com

useupload.com

37r.net

autoankauf-muenster.com

bantinbongda.net

bilgius.com

brabustermagazine.com

indigrow.org

miicrosofts.net

mysmiletravel.com

selinasims.com

spellcubesapp.com

usa-faction.com

snn01.com

hope-kelley.com

bancodeprofissionais.com

zjccp99.com

liturgycreator.com

weedsmj.com

majorelenco.com

colcollect.com

androidnews-jp.com

hypoallergenicdogsnames.com

dailyupdatez.com

foodphotographyreviews.com

cricutcom-setup.com

chprowebdesign.com

katyrealty-kanepa.com

tasramar.com

bilgipinari.org

four-am.com

indiarepublicday.com

inquick-enbooks.com

iracmpi.com

kakaschoenen.com

lsm99flash.com

nana1255.com

ngen-niagara.com

technwzs.com

virtualonlinecasino1345.com

wallpapertop.net

nova-click.com

abeautifulcrazylife.com

diggmobile.com

denochemexicana.com

eventhalfkg.com

medcon-taiwan.com

life-himawari.com

myriamshomes.com

nightmarevue.com

allstarsru.com

bestofthebuckeyestate.com

bestofthefirststate.com

bestwireless7.com

declarationintermittent.com

findhereall.com

jingyou888.com

lsm99deal.com

lsm99galaxy.com

moozatech.com

nuagh.com

patliyo.com

philomenamagikz.net

rckouba.net

saturnunipessoallda.com

tallahasseefrolics.com

thematurehardcore.net

totalenvironment-inthatquietearth.com

velislavakaymakanova.com

vermontenergetic.com

sizam-design.com

kakakpintar.com

begorgeouslady.com

1800birks4u.com

2wheelstogo.com

6strip4you.com

bigdata-world.net

emailandco.net

gacapal.com

jharpost.com

krishnaastro.com

lsm99credit.com

mascalzonicampani.com

sitemapxml.org

thecityslums.net

topagh.com

flairnetwebdesign.com

bangkaeair.com

beneventocoupon.com

noternet.org

oqtive.com

smilebrightrx.com

decollage-etiquette.com

1millionbestdownloads.com

7658.info

bidbass.com

devlopworldtech.com

digitalmarketingrajkot.com

fluginfo.net

naqlafshk.com

passion-decouverte.com

playsirius.com

spacceleratorintl.com

stikyballs.com

top10way.com

yokidsyogurt.com

zszyhl.com

16firthcrescent.com

abogadolaboralistamd.com

apk2wap.com

aromacremeria.com

banparacard.com

bosmanraws.com

businessproviderblog.com

caltonosa.com

calvaryrevivalchurch.org

chastenedsoulwithabrokenheart.com

cheminotsgardcevennes.com

cooksspot.com

cqxzpt.com

deesywig.com

deltacartoonmaps.com

despixelsetdeshommes.com

duocoracaobrasileiro.com

fareshopbd.com

goodpainspills.com

kobisitecdn.com

makaigoods.com

mgs1454.com

piccadillyresidences.com

radiolaondafresca.com

rubendorf.com

searchengineimprov.com

sellmyhrvahome.com

shugahouseessentials.com

sonihullquad.com

subtractkilos.com

valeriekelmansky.com

vipasdigitalmarketing.com

voolivrerj.com

zeelonggroup.com

1015southrockhill.com

10x10b.com

111-online-casinos.com

191cb.com

3665arpentunitd.com

aitesonics.com

bag-shokunin.com

brightotech.com

communication-digitale-services.com

covoakland.org

dariaprimapack.com

freefortniteaccountss.com

gatebizglobal.com

global1entertainmentnews.com

greatytene.com

hiroshiwakita.com

iktodaypk.com

jahatsakong.com

meadowbrookgolfgroup.com

newsbharati.net

platinumstudiosdesign.com

slotxogamesplay.com

strikestaruk.com

trucosdefortnite.com

ufabetrune.com

weddedtowhitmore.com

12940brycecanyonunitb.com

1311dietrichoaks.com

2monarchtraceunit303.com

601legendhill.com

850elaine.com

adieusolasomade.com

andora-ke.com

bestslotxogames.com

cannagomcallen.com

endlesslyhot.com

iestpjva.com

ouqprint.com

pwmaplefest.com

qtylmr.com

rb88betting.com

buscadogues.com

1007macfm.com

born-wild.com

growthinvests.com

promocode-casino.com

proyectogalgoargentina.com

wbthompson-art.com

whitemountainwheels.com

7thavehvl.com

developmethis.com

funkydogbowties.com

travelodgegrandjunction.com

gao-town.com

globalmarketsuite.com

blogshippo.com

hdbka.com

proboards67.com

outletonline-michaelkors.com

kalkis-research.com

thuthuatit.net

buckcash.com

hollistercanada.com

docterror.com

asadart.com

vmayke.org

erwincomputers.com

dirimart.org

okkii.com

loteriasdecehegin.com

mountanalog.com

healingtaobritain.com

ttxmonitor.com

bamthemes.com

nwordpress.com

11bolabonanza.com

avgo.top

A Google Ads script that uses GPT to write RSAs - SEO
Friday, July 4, 2025
spot_img

Top 5 This Week

Related Posts

A Google Ads script that uses GPT to write RSAs

Managing PPC campaigns efficiently requires using the right mix of tools.

Google Ads scripts have long been one of my favorites because they are completely customizable, scale reasonably well, and are included for free with any Google Ads account.

But there’s a new kid on the block – GPT. Could we combine generative AI with Google Ads scripts? 

That was the question I set out to answer, and the result is my first Google Ads script that uses GPT. 

It identifies opportunities for responsive search ads (RSAs) and uses GPT to help generate additional creative assets to capitalize on the opportunity.

You can grab the script code at the end of this article and try it on your own account. 

Why you should use the maximum number of assets for RSAs

Responsive search ads (RSAs) are a type of ad format on Google Ads that allow advertisers to create multiple headlines and descriptions for a single ad. 

Google then uses machine learning to test different combinations of headlines and descriptions to determine which ones perform best for different search queries and user contexts. 

This helps improve ad relevance and performance and allows advertisers to reach a wider audience. 

We found that RSAs drive 4X the impressions of expanded text ads, and ads with more headline variants got more impressions per ad than those with fewer variants.

RSA impressionsRSA impressions

Google allows advertisers to submit 15 versions of their headline and four versions of their description for every RSA. 

While that doesn’t mean that 43,000 variations of your assets will gather equal impressions, it’s always a good idea to feed the machine the maximum allowed number of assets so that its algorithms can show your ads to every interested user. 

But let’s face it, writing 15 great headlines and four long descriptions for every ad group in your account can get tedious. So it’s no surprise that many advertisers have gaps in their RSAs.

PPC management tools make it easy to find and fix this issue. But there are also ways to do this at scale without paying for additional software. 

Google Ads scripts are among the best free tools for bulk operations on ad accounts.

Last year, I wrote a script with Matt Umbro, a long-time PPC thought leader and founder of #ppcchat on Twitter, to create a list of RSA ads with missing assets. 

But that was before ChatGPT raised public awareness of generative AI. So I decided to see if I could combine scripts and GPT’s API to improve an ad account.

Using the script

The script creates a spreadsheet with one RSA on every row and column for every headline and description asset. 

Optmyzr Google Ads - RSA script - spreadsheet screenshotOptmyzr Google Ads - RSA script - spreadsheet screenshot

When an RSA is not using the maximum number of variations allowed by Google, it calls the GPT API to suggest additional ad text variations. 

These AI-generated suggestions are then placed in the spreadsheet to be bulk-uploaded back to Google to easily create the missing assets. 

To make it easy to see what was generated by GPT, those cells are automatically colored green.

Optmyzr Google Ads - GPT-generated RSA assetsOptmyzr Google Ads - GPT-generated RSA assets

In order to run this script, you will need to get an API key from OpenAI’s website and add the key to the script around line 39 where it says: 

var OPEN_AI_API_KEY = ''; // get your own API key at https://platform.openai.com/account/api-keys 

You can run the script in preview mode and look at the logs to get the URL of the new spreadsheet.

Script previewScript preview

Every time the script runs, it will use the OpenAI API. This costs money, so do not put this script on an automatic schedule. 

Download the script

Grab a copy of the code here:

If you’re new to Google Ads Scripts, you can follow the instructions here to set it up for the first time.

Limitations of GPT for Google Ads

While GPT is great at writing, it’s notoriously bad at counting. I asked it why, and here’s what it explained:

For our PPC use case, you’ll have to double-check the length of assets it suggests to ensure they fit in Google’s character limits. 

When I asked GPT to add character counts next to each suggested headline, you can see it usually comes close but gets it wrong:

GPT character countsGPT character counts

Experience has taught me that GPT tends to follow patterns found in the prompt when completing a task. 

This means it’s more likely to write headlines of an appropriate length when working with a list of existing headlines like the ones you currently have in your account. 

Hence, the script will work best for completing RSAs that are missing just a few elements rather than most or all elements.

As you can see in the earlier screenshot, it also sometimes tends to give numbered lists of suggestions, and that doesn’t make for great ads when each of your headlines starts with ‘1),’ ‘2),’ etc.

I would not let GPT auto-generate ads because I’m hesitant to let some of Google’s suggestions go on automation. 

When I accidentally turned on automatically applied recommendations for redundant keywords, it removed my brand keyword, Optmyzr, from my account.

Take GPT’s work as a suggestion to help speed up generating new ad variants.

Combining Google Ads with generative AI

GPT is one of the most exciting new technologies since the invention of the internet.

It’s mind-blowing how well it understands questions and how confident (though not always accurate) it is in its responses.

I am excited to have another fantastic tool in my PPC toolkit to help my ads outperform the competition.

I hope this script gives you a taste of what is possible when you combine Google Ads with generative AI like GPT.


Contributing authors are invited to create content for Search Engine Land and are chosen for their expertise and contribution to the search community. Our contributors work under the oversight of the editorial staff and contributions are checked for quality and relevance to our readers. The opinions they express are their own.


Popular Articles