Shopify product exporter

Shopify product exporter: a worked Shopify study

An example of Shopify product exporter. Replace the figures with your own before you decide.

Key takeaways

  • Sort price, compare-at, and variant depth. That is the public offer.
  • Do not invent a cost column.
  • Price anything you might match in the margin calculator first.

What you would do

You paste a store whose assortment you want to understand and open the CSV. You sort by price. You look at how often compare-at sits above the selling price, and how many variants share a title. That is the public price architecture. Draft products and cost are absent on purpose.

A freelancer can put the sheet in a kickoff so the assortment conversation uses real titles. A merchant marking prices they want to undercut still runs each of those prices through the margin calculator before editing their own. The export does not store the file, and it does not tell you what the other store pays for the product.

Before you change the store

These are examples. Run the tool on your own URL or your own costs. That result is the one to act on. Do not put an example in a deck as if it were your store.

Example: a lighting shop catalog in a CSV

Say you export the public catalog of a lighting shop whose storefront sells desk lamps, floor lamps, and replacement shades. You save the CSV the moment it downloads, and you name the file with the shop domain and today date, because the file is not stored for you anywhere else. You open the header and you see titles, prices, compare-at, variants, SKUs, and images. You write a three-line note that cost, drafts, and admin inventory are absent. The example from here is one snapshot and two live checks.

Say the sheet contains a desk lamp with two variants, brass and black, each with a SKU and an image. You do not decide the shop has those units on a shelf. You decide the storefront publishes those variants. Say a compare-at price is present on the brass variant. You write that the snapshot shows a compare-at beside the price. You withhold any story about a promotion succeeding. The cell is a public pair.

You resist sorting the entire file by price and declaring a strategy. Sorting can come later, after the checks. The labeled example earns its keep by showing the habit: save, name, confirm the columns, admit the absences, then touch the live store before you quote a number.

Two live price checks on that lighting sheet

Say you choose the brass desk lamp and a floor lamp you would actually mention in a meeting. You open the brass lamp on the live store. The title matches the sheet. Say the live price matches the sheet price, and the compare-at pair matches too. You write the first verdict as matched, including the compare-at presentation. You still do not call the pair a measured discount. You call it a match between snapshot and page.

Say you open the floor lamp next. The title matches. Say the live price differs from the price on the sheet. You write the second verdict as differed, and you write that you will not quote the sheet price for that lamp. You do not average the two prices. You do not pick the lower one because it makes a better story. The mixed verdict means the file is a snapshot with at least one stale or mismatched price, which is a useful thing to know.

You leave the other rows unchecked, and you label them unchecked in the note. Two checks were the assignment. They raised your care level. They did not certify the whole lighting catalog. If someone later needs a third price, they get a third live look, or they cite the cell as unchecked and dated. The example refuses to let two glances become a blessing over every row.

Variants, SKUs, and images you may describe

Say the brass and black variants are both in the sheet with distinct SKUs and distinct images. You may describe that the public catalog offers two finishes, and you may use the SKUs as labels when you talk about those rows. You attach the reminder that a SKU here is not an inventory count. If the live page shows an availability word, you can quote that word as a page fact for the variant you opened. You still do not translate the word into units.

Say the shade products appear as separate titles with their own images. You may note that the store publishes shades as their own products, which is an assortment fact. You do not infer attach rates or bundle performance. The sheet has no orders. It has products. Assortment is the honest noun. Performance would be a guest that was never invited to this example.

Images help you recognize the brass finish versus the black finish so your note does not swap them. You look. You do not download the photos into your own theme as if the CSV transferred ownership. For the example, recognition is the use. A designer who wants a mood reference can be shown the live page and the rights question in the same breath.

What the lighting note contains when you stop

The finished note names the store URL, the file name, and the download time. It records the brass lamp as a price match with a compare-at pair still on the page. It records the floor lamp as a title match and a price mismatch, with the sheet price retired from conversation. It states that other prices are unchecked. It states that cost, drafts, and admin inventory were never in the file. It states that you hold the only copy because nothing was stored for you.

Say a colleague asks whether the lighting shop is discounting aggressively, based on the compare-at column. You read them the brass verdict and the limit: a public pair matched the page, and a pair is not a result. You mention the floor lamp mismatch so they feel the snapshot nature of the file. You offer the live URL. You do not offer a percentage, a lift, or a rank against other shops. None of those were in the export.

The example ends when the folder is saved and the owner of the next step is named. Say the next step is a calm assortment comparison with your own lamps, using titles and checked prices only. That step can happen tomorrow. It will still be unable to produce the lighting shop cost, stock, or drafts. Those limits are the reason the note is allowed to exist.

What you do with the lighting folder the next day

Say the next day a teammate wants the floor lamp price from the sheet for a slide. You show the differed verdict and you open the live page together. The slide, if it needs a price, takes the live page or it omits the price. The sheet remains in the folder as the morning snapshot, mismatch included. You do not edit the CSV cell to match the page and then forget the edit. A silent edit creates a file that matches neither the download nor a fresh export.

Say someone asks how many lighting products the shop sells, hoping you will count rows. You can say the snapshot has a row per published variant you were given, and you can refuse a theatrical total if you did not audit the file for duplicates, unpublished gaps, or pagination surprises. The example never needed a census. It needed two price checks and a clear header. A count, if you ever truly reconcile one, would be a separate chore with its own note.

Say the assortment comparison happens, and your own Shopify catalog has a desk lamp with a different finish and a different price. You write the comparison as titles and checked numbers side by side, with your cost coming from your admin and their cost left blank. You do not borrow their compare-at pair as a reason to change your price that afternoon. The folder has done its job when the room can see the public catalog without pretending to see the business behind it.

You keep the lighting folder immutable after that conversation. Add a meeting line in the sidecar note if you must record what the room decided, and leave the CSV bytes alone. A later export, if you need one, gets a new file name and a new pair of live checks. The labeled example is finished when a stranger could open the folder, see the brass match, see the floor-lamp mismatch, and understand why cost and stock were never part of the story.

Shopify questions

Is this from a real store?

No. It is an example, so you can see the decision. Run it on your URL or your numbers before you change anything.

What should I do with my own result?

Write down the one change it justifies, make that change, and rerun the same URL or the same inputs. Measure the business effect somewhere the tool cannot see: Analytics, the ad account, or the invoice.