Time to update title tags and meta descriptions!

Except this time, instead of spending countless hours filling out a spreadsheet, ChatGPT will do it for us!

Let’s dive in.


Why optimize Title tags and Meta descriptions?

Updating titles and descriptions is such a standard SEO practice that many people doubt its effectiveness.

It’s still one of my go-to strategies for a new client. Or any project that has low-performing pages.

  • Optimizing Title Tags can help improve rankings and even help your page rank for more keywords.
  • Optimizing meta descriptions can boost click-through rates, which also helps increase traffic.

➡️ Check out this 22% traffic increase case study on title tag updates from TrustRadius.



  1. Google Sheets
  2. GPT for Sheets
  3. OpenAI API key
  4. A sheet with URL + Target keyword (optional)


Instruction video:


Step 1. Grab an inventory of your current page performance in GSC

The goal is not to update all the title tags and meta descriptions. Just the ones that really need it.

But how do you know which pages need a better title tag or meta description?

Google Search Console has the answers.

(If you don’t have access to GSC or never set it up, you’ll have to settle for page data from a tool like SEMrush or Ahrefs.)


1.1 Head into Google Search Console and filter out branded keywords

In order to determine which titles and metas need optimization, we’ll look at non-branded traffic performance.

This is the best indicator of how your pages are performing. Better than any paid tool. I’ll typically set the date range to the last 3-6 months to get fresh data.

filter out branded search in gsc


How to filter out branded queries:

  1. Google Search Console ➡️ Search Results ➡️ Pages ➡️+ New Query filter ➡️ Custom (regex) ➡️ Doesn’t match regex
  2. Then enter your common brand terms. Use the pipe ( | ) to separate queries. Regex will exclude all branded queries. (Don’t add unnecessary spaces) 
  3. Check your queries tab to see the most common branded searches. They will often have the most clicks.


Suck at regular expressions? Just ask ChatGPT to help:


1.2 Filter out other non-relevant things

If you only operate in the US, you can set a country filter to only see US data.

Or say you only want to work on your blog. Then you can set a page filter to “/blog “. (Or whatever your blog URL is.)

URLS containing blog GSC
If you have a flat URL structure you can cry for this step instead.


1.3 Export your filtered view

Once you have cleaned up your GSC data with all the filters, hit that export button and select Google Sheets.

A new tab should open with all your data.

Export GSC report


Pro tip: bookmark this exact view, and you’ll be able to come back to it with the exact same filters and settings because it is all encoded into the URL.

Bookmark your GSC views


Step 2: Grab my Optimization Hitlist tab

Open it here and make yourself a copy. (File ➡️ Make a copy)

Optimization Hitlist tab

My optimization hitlist contains all the formulas. You simply import it to your Google sheet of search console data and it pre-fills.

Now you need to scrape your title tags and meta descriptions for these URLs in the next step.


2.1 Export what you have so far as a CSV and scrape titles/metas

In the Optimization Hitlist tab, you should have the following columns pre-filled:

  • Pages
  • Clicks
  • Impressions
  • CTR
  • Performance score

Now you need the current Title Tags and Meta Descriptions. To get that, use my quick web app that I named the “TitleMetaInator“.

You can use Screaming Frog too (if you are lame)


Using the TitleMetaInator

Simply download your half-complete Optimization Hitlist tab as a CSV.

Upload to the TitleMetaInator. It will pull all the titles and meta descriptions for you.

titlemetainator web app

Download the completed CSV file and import it to a new tab on the GSC sheet you have been working on. Don’t rename it!

You should see the title tags and meta description columns on your Optimization Hitlist tab pre-fill as soon as you add the new ‘extracted_metadata‘ tab.


2.2 Add target keyword to URLs

Next, you will need a target keyword for each URL. This helps the Optimization Hitlist determine what should be included in the Title and Meta description.

This Hitlist sheet is set up to use GPT for sheets to attempt to determine the target keyword using the other cells as reference.

However, you might get better results manually specifying the target keyword.

target keyword

There are a number of ways you can specify a target keyword for each URL.

You could use a keyword research tool like SEMrush, Ahrefs, or Google Keyword Planner. Or You could look at Search Console query performance.


2.3 Enable GPT for Sheets

GPT for sheets

This free add-on requires an Open AI API key. Which isn’t free, but it only costs a few cents to use.

(I use it frequently and I am rarely billed more than a few dollars per month.)

Simply add the extension to your sheet and then click enable functions.

Enable GPT Functions

Then, drag the target keyword prompt formula down a few rows. I recommend you do this 50 rows at a time so you do not exceed the request per minute limit rate.

If you try to do it all at once you will exceed the request limit and get #ERROR for many cells. So do a few at a time.

I find that 50-100 at a time works pretty well.


Here’s what your sheet should look like now:

Target keyword filled

Once you are happy with the output, copy the entire columns and paste them as values only. This removes the GPT formulas and stops them from trying to redo the work.

Now for the fun part. Generating AI Title Tags and Meta Descriptions!


Generate AI Title Tags and Meta Descriptions

Repeat the formula dragging process for the title tag and meta description rows.

Note that you can tweak the output by adjusting the prompts within the formulas.

You may need to make some customizations to get the kind of output you are looking for.


The prompts have a setting to output “No Changes” if GPT thinks the title/meta is sufficient.


3.1 Save hard-coded output

Once you are happy with the output I recommend selecting the GPT columns and pasting them as values only. That removes the GPT formulas.

If you were to make slight changes to the sheet it would instantly redo the formulas.

If you paste the values you get the hardcoded final output and it won’t sneakily change on you.


3.2 Examples of titles and meta descriptions generated

You think they will suck but they are actually pretty decent. Here are some before and afters.

Old Title Tag New Title Tag
Diecast Depot | Canada’s Largest DIecast Store | 5000+ Diecast Cars Diecast Model Cars for Sale | Canada’s Largest Diecast Store
Shop CONSTRUCTION Diecast | Diecast Depot Construction Diecast – Shop at DiecastDepot
Shop 1:12 Diecast | Diecast Depot 1:12 Diecast Models | Diecast Depot
Shop 1:50 Diecast | Diecast Depot 1:50 Diecast Models | Diecast Depot


Old Meta Description New Meta Description
Shop MAISTO Diecast at Diecast Depot! Top Retailer For Maisto Diecast Cars in Canada. 1/18, 1/64 and more. Shop the best selection of MAISTO Diecast cars at Diecast Depot, the top retailer in Canada. Find 1/18, 1/64, and more models. Start your collection today!
Shop Hot Wheels – Adult Collectibles products at DiecastDepot. Shipping worldwide! Shop Hot Wheels – Adult Collectibles Diecast at Diecast Depot. Find the best selection of Hot Wheels adult collectibles and enjoy worldwide shipping!
Shop 5,000+ Model Cars and Diecast Collectibles for sale in Canada’s Largest Diecast Store. Operating out of Edmonton, Alberta and shipping worldwide! Shop 5,000+ Model Cars and Diecast Collectibles for sale in Canada’s Largest Diecast Store. Find your favorite model cars at Diecast Depot today!
Shop 1:24 Scale Diecast products at DiecastDepot. Shipping worldwide! Shop a wide selection of 1:24 Scale Diecast products at DiecastDepot. Fast worldwide shipping available. Upgrade your collection today!


3.3 Check the performance score column to decide which pages to hit

Did you notice the performance score? This is a simple scoring system that looks at clicks and impressions. A high score means the page does not need a new title or meta description.

A low score means the page can benefit from a new one. Sort and filter your data by this score.

It’s up to you to determine the range of what will get the updated title/meta. In my example, I’ll go for anything under 50.

Performance Score
The scoring formula computes average relative performance for Pages, Clicks, and CTR by dividing each value by its column’s total and averaging.


Check out the last URL on my screenshot above. It has 73 clicks and over 23k impressions. A very low CTR and performance score.

This page is a perfect candidate for a new title and meta description.


Leave high-performing pages alone

It’s important to update underperforming pages and be much more careful and selective of high-performing pages.

If you look at the top pages, they have relatively high scores, and changing them could potentially make things worse so I’ll just leave those alone.

If you want to change high-performing pages, try my AI Title and Meta Description SERP analyzer.

It is a more manual one-by-one method that scrapes top-ranking SERPs to get the best recommendations.

It’s slower but produces much better output for those high-competition pages.


Step 3: Implement your new titles and meta descriptions

You may need to polish them up a bit, but this process takes hours out of the work.


It works especially well for sites with repetitive pages like programmatic template pages and e-commerce product pages.

You could even use bulk upload tools to update your titles and descriptions.

You’re on your own for that though. This post is just about generating the title tags and meta descriptions.


Now you try

It’s easy. It’s fast. It’s AI-powered.

It can save you hours of time so you can do more important things.

Don’t just read the post. Try it for yourself and form new neural connections!

Join the AI SEO Academy for more helpful tools and resources to automate and improve SEO.


Recommended Posts