Etsy Shop Stats With ChatGPT: Best Sellers and Dead Listings

Coding Liquids tutorial cover featuring Sagnik Bhattacharya for Etsy Shop Stats With ChatGPT: Best Sellers and Dead Listings.
Coding Liquids tutorial cover featuring Sagnik Bhattacharya for Etsy Shop Stats With ChatGPT: Best Sellers and Dead Listings.

Copy Etsy's per-listing stats (views, favourites, orders, revenue), give ChatGPT the table plus your shop's average orders per view, and have it sort listings by your rules: high orders per view is a best seller, few views means rewrite title and tags, many views but no orders means fix price or photos, and two failed fixes means retire.

The rules matter more than the AI. ChatGPT is quick at sorting sixty rows against thresholds you set, and unreliable if you ask it a vague question such as "which listings are bad?". So set the thresholds first, test them on a worked shop like the one below, and only then hand ChatGPT the prompts that apply them. You make the final call on every listing.

Follow me on Instagram@sagnikteaches

The four numbers worth exporting, and what each one tells you

Etsy Stats (Shop Manager, then Stats) reports some measures for the whole shop and a smaller set for each listing. Knowing which is which saves you from building rules on a number Etsy does not give you per listing.

Connect on LinkedInSagnik Bhattacharya
  • Visits are browsing sessions in your shop. Etsy's glossary counts several listing views within one session as a single visit. Visits, and the conversion rate built on them (the share of visits that ended in an order), appear in the shop-level overview, so treat them as the shop's yardstick rather than a per-listing figure.
  • Listing views are the total times a listing was clicked on, and one session can include many. This is the traffic figure Etsy shows for each listing in the table of listings further down the Stats page, so it is the one that tells you whether search and promotion put an item in front of shoppers. Low views mean a visibility problem.
  • Favourites show interest without purchase. A listing with many favourites and few orders usually has a price or shipping problem, because people like it but hesitate at the total.
  • Orders and revenue are the outcome. Etsy counts revenue as sales minus shipping and tax. Divide a listing's orders by its views and you have its order rate.

Etsy's headline conversion rate divides orders by visits for the whole shop. Because one visit can include several listing views, an orders-per-view figure for a listing will always read lower than that headline number. That is fine as long as you compare listings with each other using one formula: here, "order rate" means orders divided by listing views, in every row. Labels move from time to time, so check which columns your own Stats page shows before you build the sheet.

Subscribe on YouTube@sagnikteaches

As for exporting, Etsy's help pages describe the stats as on-screen tables, not a stats download. The Download Data tab (Shop Manager, Settings, Options) gives CSV files of your listing details (title, description, price, quantity, tags, materials, image links and SKUs) and of your orders and order items, but no traffic. So copy the listing table from Stats into a sheet, then join it to the listing CSV on title or SKU if you want price and tags alongside the numbers.

The Complete Excel Course with AI Integration thumbnail

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 now

Preparing the file before ChatGPT sees it

Get one clean sheet with one row per listing and these columns: listing title, listing ID or a short code, date published, price, views, favourites, orders and revenue for the same period. Use a single period for everything, set with the time-period dropdown at the top of the Stats page. Ninety days is a good default where you can set it, because it smooths out a quiet week or a single viral day; if your account offers only presets, use the closest one and keep it the same each month.

Three clean-up steps save you from wrong answers:

  1. Remove anything about people. If you merged in an orders file, delete buyer names, addresses and emails. You only need a count of orders per listing. A pivot table or a COUNTIF formula gives you that, and my guide to using ChatGPT with Excel shows how to ask for the formula if you do not know it.
  2. Give variations one row. A listing with ten colour variations is still one listing in the stats. Keep it as one row, and add a note column if one variation sells nearly all the units.
  3. Mark listings under 60 days old. Add a column called "age days". New listings have not had time to earn a verdict, and the prompt will tell ChatGPT to set them aside.

Then check the sheet yourself for blanks. A listing with zero views may be genuinely dead, or it may be a row where the export failed. Ask yourself whether you recognise it.

A worked shop: 24 listings, 90 days, three clear groups

This is an illustration, not a real shop. Say a small ceramics seller has 24 active listings and copies a 90-day window. Across all 24 rows the table shows 4,800 listing views and 96 orders, so the shop's average order rate is 96 / 4,800 = 2.0% of views. That average becomes the yardstick. (Etsy's own conversion rate on the overview divides by visits, so it would read higher for the same shop.) Here are eight of the 24 rows, sorted by revenue.

ListingViewsFavouritesOrdersRevenueOrder rate
Speckled mug, set of two8206431$1,0853.8%
Ring dish, blue glaze6103819$3233.1%
Large serving bowl5401126$3301.1%
Incense holder26095$751.9%
Planter with saucer480220$00.0%
Espresso cup, single3510$00.0%
Butter dish2200$00.0%
Spoon rest410177$1121.7%

Without any AI you can already see the story. The speckled mugs and ring dishes earn well above the 2.0% shop average and bring most of the money. The serving bowl draws crowds and favourites but converts at 1.1%, so shoppers want it and hesitate. The planter has 480 views and no orders, so something between click and basket is wrong. The espresso cup and butter dish barely get seen at all.

That is what the rules below formalise, so ChatGPT can apply them to 24 rows, or 240, without tiring.

Decision rules for each listing, with thresholds you can adjust

Write the rules down before you paste any data. Your thresholds will differ from this shop's, so treat the numbers as a starting point and tune them to your own averages.

  1. Too new: published fewer than 60 days ago. No verdict yet.
  2. Best seller: order rate at least 1.5 times the shop average, and orders in the top quarter of the shop. Action: protect it. Do not change the title, and photograph a second angle only if you keep the first.
  3. Solid: order rate within 0.5 and 1.5 times the shop average. Action: leave alone, review in 90 days.
  4. Visibility problem: views below 30 percent of the shop's median per listing. Action: rewrite the title and tags, check the category and attributes. Photos matter less here, because few people see them.
  5. Conversion problem: views above the shop median and order rate under 0.5 times the shop average. Action: check price against similar listings, shipping cost, the first photo and the first two lines of description.
  6. Interest but no purchase: favourites above 10 percent of views and order rate below average. Action: look at total price with postage, and consider a small sale or a bundle.
  7. Retire candidate: flagged as a visibility or conversion problem twice in a row, with a changed version tested for at least 60 days in between.

The "twice in a row" test is what stops you deleting something that only needed a better title. It also protects against seasonal items, which look dead out of season. Add a column for "seasonal, yes or no" and tell the AI to treat seasonal items as "check against last year" rather than retire.

The first prompt: sorting every row against your rules

Paste the cleaned table into ChatGPT, or upload it as a CSV, and use a prompt that spells out the rules and the arithmetic. Never ask it to guess the shop averages. Give it the numbers.

You are helping me review an Etsy shop. The attached table has one row per listing for the last 90 days: title, age days, views, favourites, orders, revenue, seasonal (yes/no).

Shop average order rate (orders / listing views) is 2.0%. Median views per listing is 285.

Classify each listing into exactly one group:
1. Too new (age under 60 days)
2. Best seller (order rate at least 3.0% AND orders in the top 25% of the shop)
3. Solid (order rate between 1.0% and 3.0%)
4. Visibility problem (views below 85)
5. Conversion problem (views at or above 285 AND order rate below 1.0%)
6. Interest but no purchase (favourites above 10% of views AND order rate below 2.0%)
7. Seasonal, check last year (seasonal = yes and not a best seller)

If a listing fits two groups, use the lowest number that applies and mention the second in the notes column.

Output a table with: title, views, orders, order rate (orders / views, calculated by you to one decimal place), group, one-line reason. Then give me counts per group. Do not rewrite any listings yet.

Notice the instruction to calculate the order rate itself and show it. That lets you spot-check. Pick three rows and divide orders by views on a calculator. If the AI's figure disagrees even once, ask it to redo the whole table and tell it which row was wrong. Spreadsheet formulas are more reliable than a chatbot's arithmetic, so a safer variant is to calculate the order rate in the sheet yourself and give ChatGPT the finished column.

A realistic reply for our ceramics shop (illustrative) puts the mugs and ring dishes under Best seller, the planter (480 views, no orders) under Conversion problem, and the espresso cup and butter dish under Visibility problem. Watch the serving bowl. At 1.1% it falls inside the "1.0% to 3.0%" Solid band, so rule 3 catches it before rule 6, even though 112 favourites on 540 views is the clearest "want it, hesitating" signal in the shop. That is your rule working as written, not an AI error. Move "Interest but no purchase" above "Solid" in the priority order and run it again.

Second prompt: a fix list per problem group, not a full rewrite

Once the groups look right, take one group at a time. Asking for fixes to all 24 listings in one go gives you generic advice. Take the visibility group first, because rewriting a title is quick and the effect shows within weeks.

These two listings were flagged as "Visibility problem". Current titles and tags are below.

Espresso cup, single: "Handmade Espresso Cup"
Tags: cup, ceramic, handmade, espresso

Butter dish: "Butter Dish with Lid"
Tags: butter, dish, kitchen

For each, suggest:
- a title that leads with the phrase a shopper would type, then material, size and use (under 140 characters)
- 13 tags of up to 20 characters each, using different phrases rather than repeating words
- three questions I should check in my own listing (category, attributes, photos)

Do not invent facts about the product. Where you need a measurement or material I have not given you, write [CHECK].

A reasonable answer proposes something like "Stoneware espresso cup, hand thrown, 90 ml, speckled glaze, small coffee gift" and a set of tags that include "espresso cup set", "coffee lover gift" and "small ceramic cup". The [CHECK] marker is there on purpose: ChatGPT will otherwise happily add "dishwasher safe" or a capacity you never stated, which is a promise to a buyer. Fill in only what is true. Etsy allows titles of up to 140 characters and up to 13 tags of 20 characters each, so ask the AI to count, then count again yourself.

For wording help across the whole shop, my tutorial on AI for Etsy titles, tags and descriptions goes deeper than this section, and whether AI-written listings hurt Etsy search answers the worry most sellers have before they rewrite. One caution on images: Etsy's help pages say an item created with the use of AI must say so in its listing description, and its handmade rules ask sellers to use their own photographs. Text help with a title is a different matter from an AI-made product picture, but read the current rules (and what Etsy's AI disclosure asks you to declare) before you publish anything AI-generated.

Conversion problems: five checks before touching the price

The planter in our example drew 480 views and sold nothing. Do these checks in order, because they go from free to costly.

  1. Open the listing on your phone, as most shoppers will. Does the first photo show the item at a size you can judge? Is there something that looks like a different product, such as props overwhelming the planter?
  2. Compare the total price. Search the planter's main keyword and note the price plus postage of the first twelve results. If yours sits at the top of the range with nothing to justify it, that is the answer.
  3. Read the first two lines of the description as a stranger. Do they say the size, the material, and whether a drainage hole exists? A planter without the drainage answer loses buyers quietly.
  4. Check processing time and shipping. A long processing time on an item that competitors dispatch in two days can sink conversion without anyone saying so.
  5. Read the reviews. One bad review on a listing with few reviews weighs heavily. If the complaint is fair, fix the product description to match.

You can hand ChatGPT screenshots of your listing and the top competitors' listings, and ask it to compare photos, price and description point by point. Blur out or avoid shop names if you prefer. It is a good second pair of eyes on photo composition and clarity, though it cannot say what shoppers would actually click.

A second shop: a printable-wall-art seller with different maths

Thresholds change with the product. Say a digital-download seller has 60 listings and a shop order rate of 0.9% of views, because digital prints sell at a low price and shoppers browse a lot. If you applied the ceramics thresholds of 3.0% for a best seller, nothing would qualify. The fix is to express every rule against the shop's own average, which is why the first prompt contained the shop average as an input and why the rules above use multiples of it.

For this seller, a best seller might reach 1.4% or better, a conversion problem sits below 0.45%, and the visibility threshold depends on the median views for those 60 rows: if that median were 230, the cut-off would be about 70. Another difference: digital listings cost nothing to hold in stock, so a low-visit listing costs only the listing fee. Retiring matters less for the cash and more for tidiness, because dead listings clutter the shop for anyone browsing it. This seller can afford a more generous trial period, perhaps a second rewrite before retiring.

Retiring a listing: what to do and what you give up

A dead listing costs the listing fee each time it renews. Etsy's fee pages put that at $0.20 per listing, and listings run for four months and renew automatically by default, so a shop with 40 dead listings spends about $8 a cycle, roughly $24 a year. That is small money. The real cost is clutter, plus a weaker first impression if a buyer browses your shop and sees items that never get bought.

Before you retire anything, do three things:

  • Copy the title, description and photos into a spreadsheet or folder, then deactivate rather than delete. A deactivated listing leaves your shop but stays in Shop Manager, so you can reactivate it later (paying the $0.20 renewal if it expired in the meantime). A deleted listing cannot be recovered.
  • Check the listing's favourites. If forty people favourited it, a small price cut or a bundle might wake it up before you give up.
  • Consider merging. Four near-identical listings in different colours often work better as one listing with variations, which puts all the sales and favourites for that product on a single page.

Ask ChatGPT to propose merges: give it the list of retire candidates and ask which look like variants of the same product. It is good at spotting that "Blue ring dish" and "Navy trinket dish, small" are the same item. You confirm by looking.

Protecting best sellers: three small moves

Best sellers deserve attention too, because a handful of listings often brings in most of the revenue. In the ceramics shop, two of the eight rows shown, the mugs and the ring dishes, made $1,408 of the $1,925 those rows earned, about 73 percent. Do not rewrite their titles. Do ask a few questions instead.

  1. Is stock safe? Compare orders per month against how long it takes to make the next batch. Running out takes a best seller off sale until you restock and renew it. My tutorial on forecasting stock and reordering covers the arithmetic.
  2. Can you add a variation? A third glaze colour on the mug set, if it fits your making process, adds sales to a page that already converts.
  3. Can a bundle lift order value? A mug set plus a ring dish at a small discount raises revenue per order. Ask ChatGPT for three bundle ideas using only items you already sell.

When the numbers mislead: a seasonal slip

Picture a candle seller (an illustration) running the sort in late January on a 30-day window. Her best product from November, a winter-spice candle, now shows 40 views and no orders, and the AI labels it a visibility problem. She almost rewrites the listing. What stops her is re-running the sort over the full year, where the candle is the shop's top seller by far. The 30-day cut was measuring the wrong season.

The lesson is to match the window to the product's cycle, and to give the prompt a seasonal column. Any item that sells for a few weeks of the year should be compared against the same weeks last year, or simply left alone out of season.

Making it a monthly routine in twenty minutes

A routine beats a one-off. Put the thresholds in a note, and keep the prompt in a ChatGPT Project, which keeps the related chats together, or in a text file you paste each time. Then:

  1. Copy the 90-day listing table from Stats into your sheet (five minutes).
  2. Clean it: remove people data, add the age and seasonal columns (five minutes).
  3. Paste the table with the first prompt (two minutes) and spot-check three rows (three minutes).
  4. Pick the five worst listings by group and act on them that day (five minutes to start).
  5. Log what you changed and the date, in a "changes" sheet, so that in 60 days you can tell whether it worked.

The log is the part people skip, and it is the part that turns this from a tidy-up into learning. After a few months you will see which kinds of rewrites move a listing and which do not, and your thresholds can get tighter.

Re-reading the numbers 60 days after a fix

Return to each changed listing after 60 days and compare the same numbers: views for visibility fixes, order rate for conversion fixes. Judge by direction, not by tiny gaps. A listing that went from 35 to 120 views worked, whatever its orders. A conversion problem that moved from 0% to 1.4% worked even if it is still below the best-seller line. Anything that did not move after a second honest attempt goes on the retire list, and you remove it without guilt.

Be wary of one trap. If you change many things at once, such as price, photos and title, you will not know which did the work. For your most important listings, change one thing at a time. For the long tail of weak listings, changing everything at once is fine because you only care that it improves.

If you would rather set up the exports, thresholds and routine with someone beside you, that is the kind of job my AI implementation consultation covers.

Questions about reading Etsy stats with AI

Is it safe to upload Etsy data to ChatGPT?

Upload only the listing-level numbers: title, views, favourites, orders and revenue. Delete buyer names, addresses and emails from any orders file before it leaves your computer. On a personal ChatGPT plan you can also turn off Improve the model for everyone in Data controls first. Listing statistics contain nothing about customers, so they are the safe part to share.

How long should I wait before calling a listing dead?

Judge a listing only after it has had a fair run: at least 60 to 90 days live, covering a normal selling period for that product. A seasonal item that has sat out its season is not dead. Compare it against the same window last year if you have the data.

Which Etsy numbers can ChatGPT not see?

It cannot see your search ranking, competitor prices, or why a shopper left. It only works from the columns you give it. Treat its output as a ranked to-do list, then open each flagged listing yourself and look at the photos, price and shipping against rivals.

Should I delete a listing with zero sales?

Not straight away. First check its listing views. Few views points to a search-visibility problem you can rewrite. Many views and no orders points to price, photos or shipping. Retire only after a changed version has had another 60 days and still sits at the bottom.

Further reads

Sources: Etsy help pages (Shop Stats Glossary; How to Use Etsy Stats for Your Shop; How to Download Your Listing Information; How to Download a Spreadsheet of Your Sold Transactions; How to Renew or Hide Your Listings; How to Deactivate a Listing; How to Delete a Listing; Etsy Fee Basics; How to Create a Listing; How to Use Tags to Get Found in Search; What Can I Sell on Etsy?); OpenAI help pages (Data controls in ChatGPT).

Want your shop data turned into a weekly decision list?

On a 1:1 call we can look at the exports you already have, decide which two or three checks are worth automating, and set up a routine you can run in twenty minutes.

Book a 1:1 call with me