All promptsLocal and ecommerce

Write product descriptions at catalogue scale without shipping the same page 300 times

A product description prompt built for hundreds at a time. It refuses any product whose attributes cannot separate it, and reports its own overlap.

Works in
ChatGPT, Claude, Gemini
You need
A product export with every attribute you hold, one product per row · The attributes that genuinely differ across the batch · The claims you are not allowed to make · Your category page, or none
Written for
chatgpt prompt for ecommerce seo
98A

Scored by our own engine

This page, run through the audit we sell. Measured 4 August 2026.

Score your own page →

Ask a model for three hundred product descriptions and it will give you three hundred product descriptions. They will read well individually and they will be roughly the same page repeated, because the same instruction applied to similar rows produces similar sentences. Nothing in the output warns you, and by the time you notice it is live. The prompt below refuses products it cannot tell apart, forbids a sentence from appearing twice, and reports its own overlap before you ship anything.

The failure is identical copy, not bad copy

A model generating at catalogue scale will not tell you that product forty is indistinguishable from product twelve. It will write something for both, and the something will be an adjective doing the work an attribute should have done.

Rule 2 is what breaks that pattern. Every description has to carry two facts that appear in that product’s row and in no other row in the batch. If it cannot find two, it refuses, and the refusal is the useful output. It means your catalogue does not currently hold enough about that product to differentiate it, which is a data problem that also affects your filters, your internal search and your feed.

Duplication checks come before publishing

Read part 3 before you push anything. It quotes every phrase that came close to repeating across two descriptions, names both products, and rewrites one of them.

Then check it yourself, because a model auditing its own output misses paraphrases. Paste the batch into one document, sort the sentences, and look for the repeats. Two minutes on forty products is cheaper than discovering the pattern after three hundred pages are indexed and you cannot tell which ones a search engine chose to keep.

Say the shared things once

Everything true of the entire range belongs on the category page, not in every description. Shipping, returns, the guarantee, what the range is for.

Repeating those in three hundred places does not reinforce them. It crowds out the two facts a buyer actually came to check, and it manufactures the duplication you were trying to avoid. The MOVED TO CATEGORY section collects them so you can write them once in the right place.

When the first batch is live, run one product URL through the AI content readiness check to see whether there is anything on it an assistant could lift, and confirm the page exposes a real product entity with the structured data checker. If you also sell the same items on a marketplace, the Etsy listing prompt covers the fields that ranking system uses instead.

The prompt 607 words
You are writing product descriptions from a catalogue export. The failure I
am trying to prevent is not bad writing. It is three hundred descriptions
that are ninety percent the same sentence, which is what happens by default.
Everything below exists to stop that.

Rules you must follow:

1. Before you write anything, read every row and find the products whose
   attributes do not differ from another product in any way a buyer would
   care about. Refuse to write for those. Name the attribute that would
   separate them.
2. Every description must contain at least two facts that appear in that
   product's row and in no other row in the batch. If you cannot find two,
   refuse that product rather than padding it with adjectives.
3. No sentence may appear in more than one description, and neither may a
   reworded version of it. If a sentence is true of the whole range, it does
   not belong in any description: move it to the category copy section and
   say it once.
4. Invent nothing. No materials, measurements, weights, care instructions,
   origins, certifications, compatibility, warranties or delivery times that
   are not in the row I gave you. If a description needs a fact I did not
   supply, leave the gap marked [NEEDS: the attribute] rather than filling
   it.
5. Do not write to a template with the values swapped. Vary the order in
   which facts arrive between products, and vary how each one opens. If you
   notice yourself producing the same shape twice, change the second one.
6. Keep each description between 60 and 110 words. Length is not the point,
   consistency of length is, because a range where three products got a
   paragraph and the rest got a line reads as neglected.
7. Do not claim anything about rankings, conversion or search performance.
   You cannot see my traffic, my competitors or my search results.

Output in three parts, in this order. Part 1 comes first even when it is
empty.

PART 1. REFUSED. Every product you cannot describe honestly, one line each:
the product, what is missing, and the single attribute that would unblock it.
If you refused nothing, write "nothing refused" and name the product that
came closest, so I know where the batch is weakest.

PART 2. THE DESCRIPTIONS. One block per product:
  PRODUCT: the identifier from my row.
  DESCRIPTION: the copy.
  ONLY TRUE OF THIS ONE: the two facts from rule 2, quoted from my row.
  MOVED TO CATEGORY: anything true of the whole range that I should say once
    at category level instead of here.

PART 3. OVERLAP REPORT. Every sentence or phrase that came close to
repeating across two descriptions, quoted, with both product names and your
rewrite of one of them. If you found none, say what you compared rather than
simply asserting it.

Constraints:
- If the rows I pasted carry too few attributes to differentiate anything,
  stop and tell me which columns I need to export instead of writing the
  batch anyway.
- Do not describe a photograph. You cannot see my product images.
- Do not use "high quality", "premium", "perfect for", "elevate" or "look no
  further" anywhere. They are the words a model reaches for when the row gave
  it nothing.

What I sell and who buys it: [ONE SENTENCE ON THE RANGE AND THE BUYER]
The attributes that actually differ in this batch: [NAME THE COLUMNS THAT VARY]
What I must not claim: [REGULATED WORDS, GUARANTEES, DELIVERY PROMISES, OR "nothing"]
My category page: [PASTE THE URL AND ITS CURRENT COPY, OR WRITE "none"]
The products: [PASTE THE ROWS, ONE PRODUCT PER LINE, WITH EVERY ATTRIBUTE YOU HOLD]

What to change

Everything in square brackets is yours to replace. Nothing else needs editing.

[ONE SENTENCE ON THE RANGE AND THE BUYER]
The range and the person, in one line. "Replacement filters for commercial coffee machines, bought by cafe owners who need the right fit first time" produces copy that leads with compatibility, while "coffee accessories" produces copy that leads with nothing. Fit and compatibility are what most ecommerce buyers are actually checking for.
[NAME THE COLUMNS THAT VARY]
The columns that differ across this specific batch, for example "size, thread type, flow rate, and nothing else". This is what rule 2 hunts in, and naming it stops the model searching for difference in columns that are identical everywhere. If the only column that varies is colour, you have learned something important before you spend a single token.
[REGULATED WORDS, GUARANTEES, DELIVERY PROMISES, OR "nothing"]
The claims you are not allowed to make, whether that is regulatory, contractual or simply untrue. "Never say medical grade, never say next day, never say waterproof, only water resistant" is the kind of instruction that saves a recall later. Models generate these phrases readily because they appear in the copy they learned from.
[PASTE THE URL AND ITS CURRENT COPY, OR WRITE "none"]
Where rule 3 sends everything true of the whole range. Without a destination the model keeps the shared sentences in every description, which is exactly the duplication you are trying to remove. Pasting the current category copy also stops it recommending you add something already there.
[PASTE THE ROWS, ONE PRODUCT PER LINE, WITH EVERY ATTRIBUTE YOU HOLD]
The export itself, one product per line, with every attribute column you have rather than a tidied selection. Twenty to forty rows per run is the working size: enough for the overlap report to be meaningful, few enough that you can read all of it and that the model does not start dropping rows silently.

How to run it

  1. 01
    Export every attribute column, not a tidy selection

    Pull the export from your platform with all the attribute columns you hold, including the ones that look like warehouse data. Rule 2 needs two facts unique to each product, and the columns that make products genuinely different are often the dull ones: thread size, capacity, compatibility, the year a model was superseded. Marketing fields are usually the least differentiating thing you own.

  2. 02
    Batch by category, and keep the batch small

    Run twenty to forty products at a time, grouped by category rather than by whatever order the export came in. Products in the same category are the ones at risk of reading identically, so putting them in the same run is what gives the overlap report something to find. Large batches also cause models to drop rows without telling you.

  3. 03
    Read part 1 before anything else

    The refused list is the most valuable output and the part everybody scrolls past. It names the products your catalogue cannot currently tell apart, which is a data problem rather than a copywriting one. Fixing the attribute is worth more than any description, because it improves your filters and your search alongside the page.

  4. 04
    Check the overlap report by hand as well

    Paste all the descriptions into one document, sort the sentences and look for the repeats yourself. A model asked to audit its own output will miss some, particularly paraphrases, and this check takes two minutes on a batch of forty. Anything that appears twice either gets rewritten or gets moved to the category page.

  5. 05
    Move the shared sentences to the category page once

    Take everything in the MOVED TO CATEGORY sections, deduplicate it, and write it once on the category page. Shipping and returns, the guarantee, what the range is for: these belong in one place rather than repeated across three hundred product pages where they crowd out the two facts a buyer came to check.

  6. 06
    Publish a sample and check one live page

    Push ten of the descriptions rather than all of them, then run one live product URL through the AI content readiness check. If the page has nothing quotable, the description is doing no work beyond filling space, and you will find that out on ten pages instead of three hundred.

Questions people ask

Can ChatGPT write product descriptions at scale?

It can produce hundreds in minutes, and left unconstrained it will produce hundreds that are nearly identical, because the same instruction applied to similar rows generates similar sentences. Scale is not the problem to solve. Variation grounded in per product attributes is, which means the constraints that matter are the ones forbidding a reused sentence and requiring two facts unique to each product.

Will Google penalise AI written product descriptions?

Google's guidance targets scaled content produced mainly to manipulate rankings rather than the tool that produced it. A description written from real attributes that helps someone decide is fine. Three hundred pages of the same sentence with the product name swapped is the thing the guidance is about, and it would be just as much of a problem if a person had written it.

How many products should I do in one run?

Twenty to forty rows at a time, grouped by category. Small enough that you can read the whole output and that the overlap report stays meaningful, large enough to be worth the setup. Past a couple of hundred rows most models start dropping products silently, and the giveaway is an output covering fewer items than you pasted.

What if my products genuinely are almost identical?

Then the honest answer is fewer pages, not more copy. Size and colour variants usually belong on one product page with options rather than as separate indexable URLs, which is a catalogue structure decision rather than a writing one. The refused list is how you find out you have this problem, and no description can fix it.

Do I have to rewrite manufacturer supplied descriptions?

The ones that matter commercially, yes, because every other retailer selling that product has the same text. Start with the products that already get traffic or already sell, since a rewrite only pays back where somebody was going to read it. For the long tail, unique attributes in your structured data are often worth more than unique prose.

A new prompt, most days One working prompt for a real SEO or AI visibility job, what to change in it, and a worked example. No sequences, no offers dressed as newsletters.

Unsubscribe in one click. We never pass your address on.

Run your first audit
in about a minute

Free account, no card. Paste your URL and get a real, scored report of your AI and search visibility.

Measuring rankings in