Export your products as a CSV, keep the handle, title and the two SEO columns, ask AI to rewrite titles to about 60 characters and descriptions to about 155 in batches of 25 rows, check length and duplicates in the sheet, import with a small test first, then compare Search Console after four weeks.
Shopify's help pages explain where the fields live and how long they should be. They do not walk through a catalogue-wide rewrite, which is where the real risk is: a model that quietly invents a feature, drops the model number people search for, or writes forty near-identical descriptions. The steps below treat AI as a fast first drafter and the spreadsheet as the quality gate, using a small manufacturer's 140-product catalogue as the running example.
What the fields do and where the limits sit
Each product has a search engine listing: a page title (the blue headline in search results) and a meta description (the grey text under it). In a product CSV they are the columns SEO title and SEO description. Shopify's import guide says the title takes up to 70 characters and the description up to 320. If either is left blank, Shopify uses the product title or description instead.
Those are import limits, not display limits. Shopify's own SEO advice is to keep titles to 60 characters or fewer, because most search engines shorten longer ones, and to keep descriptions near 160. Write to the display figures. A title at 68 characters is allowed by the import and gets cut in the results.
Two more points shape the plan. When the title field is blank, the theme combines your shop name with the product title, in an order the theme sets. If you set a custom title, check the live page's source to see whether the shop name is still added after it. If it is, you have fewer characters than you think. And Google's own documentation says it builds the snippet mainly from page content, using your meta description when it judges that more accurate, and draws title links from several sources. A good meta description raises your chances of a good snippet and does not guarantee one.

The Complete Excel Course with AI Integration
From formulas and pivot tables to Power Query, DAX, VBA and AI with Copilot, ChatGPT and Claude — hands-on from the first lesson.
By Sagnik Bhattacharya and Virginia Thorn, Primetime Emmy Award winner
Buy nowDecide which pages deserve the rewrite
A catalogue rewrite is not all or nothing. For the 140 products in the example, the owner sorted by what the pages already earn and what is plainly broken, using three groups:
| Group | Typical fault | Action |
|---|---|---|
| Top 20 by search impressions | Titles fine but descriptions blank or duplicated | Rewrite descriptions only; leave titles alone |
| Middle 70 | Title is the product name and nothing else | Rewrite both, after the sample test |
| Bottom 50 | Blank, or copied from the supplier | Rewrite both; consider whether the product should be on the site |
You can get impressions per page from Google Search Console's Performance report, filtered to pages and sorted by impressions, for the last three months. Export it and add the figures to your product sheet. Protecting what already works matters more than polishing what does not. If your store audit has already flagged the weak pages, the store audit checklist is a sensible place to start the list.
Step one: export and trim the file
- In the Shopify admin, go to Products and choose Export. Export all products as a "CSV file for Excel, Numbers, or another spreadsheet program".
- Open it, and save a copy named "backup-before-seo". Never edit the original.
- In the working copy, keep these columns: Handle (shown as URL handle in the import guide), Title, Type, Tags, a short piece of description text, SEO title and SEO description. Delete the rest, including every variant, price, inventory and image column.
- Collapse the file to one row per product. Products with several variants or images usually take extra rows that repeat the handle with a blank title. Filter to rows where Title is not blank.
Shopify's import page makes the reason for trimming clear. A column missing from the file leaves existing values unchanged, while a blank cell in a column you include clears the value on an existing product. And a variant column without the columns it depends on can delete data: Shopify's own example is a SKU column imported without Option1 name and Option1 value, which deletes the product's variant option. So the safest import file is the smallest one that works: handle, title and the two SEO fields. Test that on three products before running it on 140, since only you can see how your own store behaves.
Step two: rewrite in batches of 25
Do not paste 140 rows in one go. Quality drops as a batch lengthens, and a mistake is easier to find in 25 rows. Give the assistant the rules once, then paste the rows.
You are rewriting SEO text for a Shopify store that makes hand tools.
For each row I paste (handle, title, type, tags, description excerpt),
return a table with: handle, seo_title, seo_description.
Rules:
- seo_title: 50 to 60 characters. Start with what the product is, then the
distinguishing detail (size, material or model code). Do not add the shop
name. Keep every model number and brand term exactly as written.
- seo_description: 120 to 155 characters. One sentence on what it is and
who it is for, then one fact from the data I gave you.
- Use only facts present in the row. Do not mention shipping, price,
warranty, awards or "best" unless the row says so.
- No two rows may share a title or a description. Do not start more than
three descriptions in a row with the same word.
- Return the character count for each field in extra columns.
The line about using only facts in the row stops the commonest failure, where a model fills space with "premium quality" or "fast delivery". The request for character counts is useful, though the counts it reports can be wrong, so you will recount in the sheet.
A sample of what comes back, and what to fix
Illustrative rows:
| Handle | Before (SEO title) | After (SEO title) |
|---|---|---|
| claw-hammer-16oz | Claw Hammer 16oz | 16 oz Claw Hammer, Hickory Handle, Forged Steel Head |
| chisel-set-4pc | Chisel Set | Our Shop | 4-Piece Wood Chisel Set, 6 to 25 mm, Leather Roll |
| mallet-beech-ct250 | (blank) | CT250 Beech Mallet, 250 g Round Head for Chisel Work |
What to fix in a typical first pass: the assistant added "Leather Roll" because the description excerpt mentioned a roll; confirm that it is actually included. It changed "16oz" to "16 oz", which splits a term some shoppers type without the space. Keep the form your customers use. And "Round Head" for the mallet is a guess if the row did not say it, so remove it. Ten minutes of checking at this stage saves you from publishing a claim you cannot honour.
The descriptions need a different test
A good meta description reads like a short answer to the search. Compare the weak and the stronger version for the same chisel set.
- Weak: "Shop our high-quality chisel set at great prices. Order now for fast delivery." This says nothing about the product, and "fast delivery" is a claim.
- Stronger: "Four bevel-edge chisels from 6 to 25 mm in a leather roll, ground and honed before dispatch, for joinery and general bench work." It names sizes and use, using facts from the product data.
If a description repeats the title word for word, rewrite it. The title says what it is; the description says why it suits the searcher.
Step three: checks in the spreadsheet, before anything is imported
Put the checks in formulas so they run on every row, not in your head. In a spreadsheet, with the new title in column F and description in G, add these helper columns:
- Title length:
=LEN(F2), then conditional formatting to flag anything over 60 or under 30. - Description length:
=LEN(G2), flag over 155 or under 90. - Duplicate title:
=COUNTIF(F:F,F2)>1, flag any TRUE. - Duplicate description: the same on column G.
- Brand and code kept:
=ISNUMBER(SEARCH(model_code, F2))where the model code sits in its own column. - Banned words: a column that searches for "best", "cheapest", "guaranteed" and "free shipping".
Anything flagged goes back to the assistant with the specific fault: "These rows have titles over 60 characters. Shorten each to 55 without removing the model code." Sort by flag, fix, recheck. For an example business with 140 rows and a good first pass, expect about 15 to 25 rows to need a second go.
The brand-term rule that stops damage
The riskiest change in a bulk rewrite is losing words people actually search. A small manufacturer sells a "CT250" mallet, and customers search for the code. A rewrite that turns the title into "Traditional Beech Mallet for Woodworking" is nicer prose and loses the one term that brought buyers. Build a protected-terms column: brand name, model codes, sizes, and any phrase that appears in your top Search Console queries for that page. Tell the assistant the terms must appear, and use the SEARCH check to verify. For the top 20 pages by impressions, compare the old and new titles against their top queries by hand. If the old title contained a query that earns clicks, keep it.
Three title patterns, by kind of product
One template across a catalogue produces the sameness search engines discount. Give the assistant two or three patterns and tell it which product types use which. For the hand-tool example:
| Product kind | Pattern | Example |
|---|---|---|
| Single item with a model code | Size or spec, item, model code | 250 g Beech Mallet, Round Head, CT250 |
| Sets and kits | Count, item type, range, container | 4-Piece Bevel Edge Chisel Set, 6 to 25 mm, Roll |
| Consumables and spares | Item, fits what, pack size | Replacement Plane Blade, Fits No. 4 Smoother, 2 Pack |
Say which pattern applies by adding a "kind" column to the sheet and telling the assistant to follow it. It lets you vary the output on purpose, and it makes the duplicate check easier, because titles in the same kind differ only in the specifics you care about.
Products that look alike are where duplicates start
The duplicate check will catch the obvious clashes, and it will also show you a real problem: several products that differ only by colour or size, each with its own page. A brass and a steel version of the same square, listed separately, produce near-identical titles. Do not let the assistant solve it by adding random adjectives. Put the distinguishing fact first ("Brass 150 mm Try Square" and "Steel 150 mm Try Square") and keep the description's second sentence specific to the material. If you cannot tell two products apart in words, a visitor cannot either, and the better fix may be merging them into one product with variants.
Time and cost for the example catalogue
A rough budget for 140 products, with figures that will vary with your own speed:
- Export, backup and trimming the file: 30 minutes.
- Protected-terms column and top-query checks for the top 20 pages: 45 minutes.
- Six batches of 25 rows (the last is 15), at about 10 minutes each including reading the output: 1 hour.
- Second pass on flagged rows, 20 of them: 20 minutes.
- Test import on 3 products, checking the live pages, then full import: 40 minutes.
That is about three and a quarter hours, against two or three days of typing 280 fields into product pages one by one. The assistant costs whatever your subscription already costs; an individual paid plan is enough for this volume, and uploading a trimmed CSV of text columns is far under any file limit. Nothing here needs an API or an SEO app, though apps in the Shopify App Store can do some of it and are worth comparing once you know what you need.
Quick tests of a rewritten title
Before importing, read ten titles aloud as if they were search results and ask three questions of each. Would a stranger know what this is? Is the word they would type in the first half? Is there any claim here that the product page does not back up? If a title passes all three, it is ready. A title that reads like keywords with commas between them fails the first test, however many keywords it contains. Likewise, a description that ends with "Shop now" adds nothing, because the visitor already knows they are in a shop.
Step four: import safely
- Create a test file with three products. Import it with Overwrite products with matching handles ticked, which replaces values in the columns your file includes. Without it, products whose handle already exists are ignored.
- Open the three product pages. Look at the Search engine listing preview in the admin, then at the live page source to confirm the title tag.
- If the test looks right, import the full file in groups: the top 20 first, then the rest.
- Keep the backup export for at least three months.
Importing from a spreadsheet can corrupt special characters, so check any product whose name contains an accent or a symbol such as a multiplication sign. Shopify's import guide asks for UTF-8 encoding, so save as CSV in UTF-8 if your program offers the choice. And never touch the handle column in this file. Handles are the addresses of your pages, and the Shopify import guide treats the handle as the key for updating existing products.
A rewrite that went wrong at 40 products
A wholesale distributor with a retail store ran a bulk rewrite across its whole catalogue and asked the assistant to "make titles more appealing". The assistant dropped pack sizes from the titles (the "x 12" and "box of 50" that buyers search for) and added "premium" to nearly every one. Within a month the clicks on its top 40 product pages had slipped, and several pages were showing the same description. The repair was boring: restore the pack sizes from the backup, use the protected-terms check, and ban filler adjectives in the prompt. The lesson is that "more appealing" is not an instruction. Describe the format, the length and the facts to keep. (Illustrative.)
Judge it in Search Console after four weeks
Search results change slowly, and Google may take a few weeks to recrawl and show new text. Wait four weeks, then compare. In Search Console's Performance report, set the date range to the 28 days after the change and compare it with the 28 days before. Filter by page to your changed group and by pages not changed, as a control, and read four columns: impressions, clicks, click-through rate and average position.
| What you see | Likely meaning | What to do |
|---|---|---|
| Impressions flat, click-through rate up | The new text is more persuasive | Keep; apply the pattern to the next group |
| Impressions down on the changed group only | You removed a term people searched, or rankings moved | Compare old and new titles against the top queries; restore lost terms |
| Both groups move together | Seasonality or a wider ranking change | Do not credit or blame the rewrite |
| Clicks up, orders flat | The text promises something the page does not deliver | Read the page as the visitor would |
One caution on reading these numbers: small catalogues produce small counts, so a change of ten clicks on a page can be noise. Judge groups, not single pages. If you want to see whether AI assistants are also sending visitors to the rewritten pages, the referral traffic guide shows what to look for in your analytics.
Collections, pages and the products you skipped
The product CSV does not cover collections or pages. For those, open each in the admin, click the search engine listing edit link and paste in the new text. Draft all of them in one chat as a table (name, current text, new title, new description) and work down the list. Collections often matter more than single products, since a "Chisels" collection page can rank for the general term that single products cannot. Give it the same discipline: protected terms, length checks, no invented facts.
If you sell in more than one language, write the English text first and translate afterwards; the translation methods comparison covers the options. And if your product descriptions themselves are thin, fixing the descriptions first usually gives the meta text better material; see the guide to product descriptions with AI, and the WooCommerce version if you also run a second store on that platform.
A quarterly routine that keeps it tidy
New products arrive with blank SEO fields, because nobody fills them in at launch. Add a recurring check: export products every quarter, filter for blank SEO title or description, and run only those rows through the same prompt. Keep the prompt, the protected-terms list and the check formulas in one saved file so the second run takes half an hour, not an afternoon. Record in a line what you changed and when, because in four weeks you will want to know which group got which treatment.
Questions before a bulk SEO rewrite
What are the length limits for Shopify page titles and descriptions?
Shopify's product CSV accepts an SEO title of up to 70 characters and an SEO description of up to 320. Search engines show less. Shopify advises keeping titles to about 60 characters and descriptions to about 160, so write to those figures, not the import limits.
Will changing titles hurt my rankings?
It can move them, up or down, so do not rewrite the whole store blind. Change a sample first, keep brand names and product codes people search for, and compare Search Console figures for the changed pages against the unchanged ones. Revert any batch that clearly lost impressions.
Does the import change my URLs?
Not if you leave the URL handle column untouched. The handle identifies each product during import. Never edit it in the same file as your SEO changes, because a changed handle creates a new address and loses the old page's history unless you add a redirect.
Can I do collections and pages the same way?
Not with the product CSV. Products import in bulk, while collections and pages have their own SEO fields in the admin. For those, ask AI to draft the text in a table and paste each one in, which is slower but manageable for a few dozen.
Further reads
- Squarespace AI SEO: Write Page Titles, Descriptions and Alt Text — The same job on a Squarespace site.
- WooCommerce Product Descriptions With AI: Bulk Updates and Safe SEO — Bulk description updates on WooCommerce.
- Google Merchant Center Image Requirements for AI-Generated Product Photos — Keep product data consistent for shopping listings.
- How to Set Up Human Review for AI Work Without Slowing Down — Set up the review step for bulk text.
- How to Check AI Is Doing Good Work, Not Just Fast Work — Judge output quality, not just how fast it came.
- Remove Backgrounds From Product Images With AI: Glass, Hair, Shadows — Fix product images while the pages are open.
- ChatGPT for SEO: A Quality Gate for Keyword Clusters and Briefs — The gate a ChatGPT keyword cluster, brief or meta description must pass before a client sees it, with Search Console checks and where the model invents data.
- Google Ads for Dropshipping With AI: What to Let It Write — What AI can safely draft for a dropshipping store's Google Ads, what only you can verify, and the budget sum that decides whether to start.
- Google Merchant Center Suspended? Fix Misrepresentation With AI Help — A step-by-step audit of the pages, details and data Google checks after a misrepresentation suspension, plus appeal wording and a scoring sheet.
- Google Scaled Content Abuse Policy: Which AI Store Pages Are at Risk? — Sort your AI-written product and collection pages into safe, edit, merge and noindex piles, with a worked audit of a 200-product Shopify store.
- Google Shopping Titles: Rewrite Product Titles With AI Safely — Rewrite supplier-style titles with AI, label them correctly for Merchant Center, and prove the new titles work with a controlled test group.
- Shopify Sidekick Skills: Worked Recipes for Repeat Store Tasks — Five copy-ready Sidekick skills for the jobs you repeat every week, with the instructions, sample output and what to check.
- AI Tools and AI Development: The Complete 2026 Guide — the AI hub, including every tutorial in the AI-for-business series.
Sources: Shopify Help Center (search engine listings, product CSV format, importing and exporting products), Google Search Central (title links and snippets), checked November 2026.