A good Shopify collection page has a short intro that helps a shopper choose, a few honest internal links, and enough original information that it is not a twin of the page next to it. AI can speed up all three, but the failure mode is predictable: 80 collections, 80 intros that all start "Discover our range of", and a store that looks mass-produced. This post is a workflow that starts with an audit, then writes from real data, then checks for duplication.
Status: the prompts are untested templates, and example outputs are hand-written and illustrative. The audit script output below is real, from a small test file I made up for this post.
Which collection pages are worth writing for?
Collections often match broad searches better than single products, such as "cotton kurtas for men" or "running shoes for flat feet". They are also where a lot of stores leave a blank. Before writing anything, list your collections and rank them by what they could do for you:
- Collections with traffic or sales now. Pull them from your analytics or Shopify's reports.
- Collections that match a real search. Type the title into Google and see whether it looks like something people look for.
- Collections with at least a handful of products. An empty or one-product collection is a bad landing page. Google's ecommerce URL guidance (read 2026-10-09) says to avoid indexing pages without useful content, to use a noindex robots meta tag for empty categories, and to consider returning a 404 if empty categories are removed automatically.
- Everything else. Leave them alone or consider whether they should exist.
Shopify's collections help page (read 2026-10-09) says the platform is moving to a new collections model and describes the two methods: automated collections, where products are added based on conditions, and manual ones, where you pick products. I could not find the editing steps for description or SEO fields on that page, so look at your admin's collection page, where the search engine listing preview and description fields sit in the standard layout. Also note that an automated collection can change when the underlying products change, so copy that names specific items goes stale.
Step 1: audit the pages you already have
Export your collection titles and descriptions to a CSV. Plain text only: strip the HTML first. Then run a quick audit. This script flags empty or short intros, and finds pairs that share most of their wording, which is the thin-content pattern you most want to catch.
import csv, re, sys
rows = list(csv.DictReader(open(sys.argv[1])))
def words(t):
return len(re.findall(r"\w+", t))
def shingles(t, n=5):
w = re.findall(r"\w+", t.lower())
return {" ".join(w[i:i+n]) for i in range(max(0, len(w)-n+1))}
print("handle | words | flag")
for r in rows:
n = words(r["description"])
flag = "EMPTY" if n == 0 else ("THIN" if n < 40 else "ok")
print(f"{r['handle']} | {n} | {flag}")
print("near-duplicate pairs (share >= 50% of 5-word runs):")
found = False
for i in range(len(rows)):
for j in range(i+1, len(rows)):
a, b = shingles(rows[i]["description"]), shingles(rows[j]["description"])
if a and b:
share = len(a & b) / min(len(a), len(b))
if share >= 0.5:
found = True
print(f" {rows[i]['handle']} <> {rows[j]['handle']}: {share:.0%}")
if not found:
print(" none")
I ran it on a four-row test CSV (two kurta collections with deliberately templated copy, one empty, one written properly). Real output on 2026-10-09:
handle | words | flag
cotton-kurtas-men | 30 | THIN
linen-kurtas-men | 30 | THIN
festive-kurtas | 0 | EMPTY
pathani-suits | 45 | ok
near-duplicate pairs (share >= 50% of 5-word runs):
cotton-kurtas-men <> linen-kurtas-men: 81%
The 40 word and 50 percent thresholds are my choices for this demo, not Google numbers. Adjust them to your catalogue. What matters is the shape of the finding: two collections whose intros differ by one word. That is the page type Google's spam policy page describes when it talks about generating many pages without adding value (read 2026-10-09). Deleting or rewriting those is a better use of time than writing more.
Step 2: feed the model your product data, not just the title
A model given only "Cotton kurtas for men" will write the generic page. Give it facts from the collection itself. Export the products in the collection with title, price, fabric, available sizes and any real differences.
You write short intros for Shopify collection pages.
Use ONLY the data below. Do not invent fabrics, sizes, certifications, delivery times, or claims such as "best" or "cheapest". If something would help the shopper but is missing, list it under MISSING INFO.
COLLECTION: [NAME]
PRODUCTS (name | price | fabric | sizes | one real differentiator):
[PASTE 8 to 20 ROWS]
OUR POLICIES: shipping [TEXT], returns [TEXT]
BRAND VOICE: [PASTE SHORT VOICE BLOCK, as in the product description post]
Produce:
1. An intro of 40 to 60 words that sits above the grid. It must state what is in the collection, the price range computed from the data, and one decision rule ("choose X if..., choose Y if...").
2. A buying guide of 120 to 200 words for below the grid, with 3 short sections that compare the products in this collection with each other on real attributes (fabric, fit, occasion).
3. Three questions shoppers ask about this collection, answered from the data only.
4. MISSING INFO.
The "decision rule" instruction is what separates one collection page from another. "Choose cotton for daily wear in summer, choose linen if you will wear it for hours in humid weather" is useful and different for each collection, but only if your fact sheet supports it. If you have not worn or tested the fabrics, the model's confident line about breathability is a guess, so keep to what your supplier specifications say.
Check the price range yourself. Models miscount, and a wrong "from Rs. 799" on a page is a trust problem. For the voice block and fact sheet pattern, see the Shopify product description prompts.
Step 3: plan internal links on paper first
Ask for anchors and targets, but you decide the links. Google's ecommerce structure guidance (read 2026-10-09) advises a clear path from menus to category pages to subcategories to products, says to link with standard HTML a href links rather than JavaScript-only navigation, and warns that if category pages do not link directly to all products, Googlebot may miss some products. That implies two practical checks: every product should be reachable through a collection, and your links should be real links.
Here are my collections and their handles:
[PASTE LIST]
For the collection "[NAME]", suggest up to 5 links to OTHER collections that a shopper would plausibly want next (a cheaper option, a different material, a gift version, a size-specific version). For each: target handle, descriptive anchor text of 2 to 5 words, and one sentence of reason. Do not link to a collection that is not in my list. Do not use "click here" or "view more".
Then link by hand in the Shopify page editor or the theme. Avoid linking every collection to every other collection. A short, relevant list helps shoppers more than a wall of links. Blog posts can feed collections too, and the reverse: a how-to-choose article linking to the matching collection is a reasonable use of your own content.
Step 4: meta title and description
The product description post cites Shopify's help centre for 60 characters as the suggested page title length (70 maximum) and 160 for the meta description. I re-read Shopify's SEO page on 2026-10-09 (via a summarising fetch) and it still says that, and that meta descriptions can be set on collections. Confirm in your admin's search engine listing preview. Ask for options and measure them in a spreadsheet; models miscount characters.
Write 5 options each for the SEO page title and meta description of the collection "[NAME]".
Title: at most 60 characters, starts with the main keyword "[KEYWORD]", ends with the store name.
Description: at most 155 characters, mentions one real differentiator and the price range "[RANGE]".
No claims that are not in the data. Output a table with a character count column.
DATA: [PASTE SAME DATA AS BEFORE]
Google may still rewrite titles and snippets, so treat these as a good default.
Step 5: check each page before publishing
Run this against every draft.
| Check | Pass condition |
|---|---|
| Unique decision rule | The intro contains advice that would be wrong on the neighbouring collection |
| Facts match the grid | Price range, fabric and sizes match what the product cards show |
| No empty superlatives | No "best", "premium", "perfect for every occasion" |
| Duplicate scan | Re-run the script on the new copy; no pair above your threshold |
| Links | 3 to 5 relevant collection links, all resolve, none point to empty collections |
| Mobile preview | Intro is short enough that products show on the first screen |
| Policy lines | Shipping and returns text matches your actual policy page |
For longer pieces of content that support these pages, the AI SEO content strategy prompts cover planning, and the review mining prompts show how to find the real questions customers ask about a category, which makes better buying guides than anything a model invents.
Pitfalls specific to collections
- Filtered and sorted URLs. Shopify stores generate many URLs from filters. Google's URL structure guidance (read 2026-10-09) says to reduce alternate URLs returning the same content and use canonical tags consistently, and points elsewhere for faceted navigation. I did not verify how your theme handles filter URLs, so check what canonical tag your collection pages output on a filtered view.
- Automated collections that drift. A rule such as "tag equals festive" can pull in products your copy does not describe. Re-read the intro whenever the product mix changes.
- Seasonal pages. Keep the URL when you refresh a seasonal collection, update the copy, and avoid creating a new near-duplicate each year. Consider whether last year's page should be redirected or updated.
- Collection images. Shopify's add-media page (read 2026-10-09) notes that WebP is supported for products and Files, but collection images do not support WebP. If a collection image upload fails, convert to JPEG or PNG.
- Copy that contradicts the grid. A model might write about "linen and cotton" when the filtered grid has only cotton. Always preview the live page.
A realistic plan for a store with 40 collections
- Export titles, handles and descriptions. Run the audit script.
- Delete or merge collections that are empty or nearly identical.
- Pick the ten that matter most. Write intros and buying guides using the product-data prompt, one at a time, reading each aloud.
- Add the internal links by hand. Add titles and meta descriptions.
- Re-run the script. Publish in two batches and watch Search Console for those URLs over the following weeks.
- Review impressions and clicks per collection in a month. I have no benchmark to offer for what a good change looks like, so compare each page with itself.
If you sell on Indian marketplaces too, the listing prompts for Amazon, Flipkart and Meesho sellers cover their formats separately. If your store runs on Shopify with Indian payment methods, the Razorpay, UPI and COD setup guide is the companion piece for the checkout side. Neither collection copy nor a script will fix a catalogue with weak products, but they can stop a decent catalogue from looking like a template.



