Early access by waitlist
Back to blog

How to export Shopify orders to Excel, one row per order

Maksim Norkin (opens in a new tab)Product

Updated · 7 min read

Export Shopify orders to CSV, open them in Excel, and turn one row per line item into one row per order with just the columns you need.

You can export Shopify orders from the admin in a few clicks, as a CSV file that Excel opens. The surprise is inside the file: an order with three items is three rows, most of them half empty, and the columns are Shopify's whole set rather than the ones you need. This guide covers the export, why big ones arrive by email, and how to turn the file into one row per order with just your columns.

Export Shopify orders from the admin

  1. Sort and filter first. On the Orders page, narrow the list to the orders you want: a status, a channel, a tag.
  2. Click Export.
  3. Choose which orders. In the Export orders window, pick up to 50 orders or the current page, or orders by date.
  4. Choose the format under Export as. Whichever you pick, it's a CSV: Shopify imports and exports CSV in UTF-8 and nothing else.
  5. Click Export orders. The other button, Export transaction histories, gives you payments rather than orders, and holds only captured payments.

Export Shopify orders by date, and why big exports arrive by email

Per Shopify, an export of up to 50 orders, or of the current page, downloads straight away. Choose more than that, or orders by date, and the CSV is emailed to you and to the store owner instead. So for a month of orders, choose Orders by date, set the start and end dates, and watch your inbox.

A big export takes a while: Shopify's own example is an export of 400,000 items taking around four hours. If an export fails, Shopify emails you to say so.

What's in the Shopify order export CSV

  • The order: Name, Financial Status, Fulfillment Status, Total.
  • Each item: Lineitem name, Lineitem price, Lineitem SKU, Lineitem compare-at price.
  • The customer: billing and shipping name, address and phone.
  • The payment: Payment Method and Payment References, which you can use to match an order with your payment provider.

The export window asks which orders and which format, not which columns, so you get Shopify's full set and trim it afterwards (below). The file also shows each order as it was when it was placed: a product you renamed or repriced since keeps its old name and price.

Open the export in Excel

To export Shopify orders to Excel, open the CSV in Excel, then save it as an Excel workbook (.xlsx) before you start cleaning, so your formulas and formatting are kept. If a SKU or another ID loses its leading zeros, import the file instead of opening it and set that column to text. If accented names look garbled, import the file instead of opening it and choose UTF-8.

Shopify export orders with line items: why the rows look broken

Shopify writes one row per line item. An order with several items has its extra items on rows of their own, and many of the order fields on those rows are left blank. So an order's details are on its first row, and the rows under it are there for the extra items.

Before you change anything, find an order with several items and look at its rows. Note which order columns, such as Financial Status or Total, are filled on the first row and blank on the others, and whether Name is repeated on every row. The next section relies on both.

Shopify order export, one row per order, with only the columns you need

  1. Keep a copy. Duplicate the sheet and call the copy Items. You will want the line items again for a product report.
  2. Keep the first row of each order. On the original sheet, filter a column that is filled only on an order's first row (Financial Status, say) to show blanks, delete those rows, and clear the filter. One row per order is left.
  3. Count the items, if you want them. If Name is repeated on every row, add an Items column that counts each order's rows on the Items sheet:

=COUNTIF(Items!A:A, A2)

Here Name is column A on both sheets; change the letters to match your file. To list the items in one cell instead, Excel for Microsoft 365 and Google Sheets can join them, with the item names in column R of Items:

=TEXTJOIN(", ", TRUE, FILTER(Items!R:R, Items!A:A = A2))

  1. Trim the columns. Copy the columns that hold formulas and paste them back as values, then delete every column your report doesn't need. For a bookkeeper that may be Name, the order date, Financial Status, Total and Payment References; for a supplier, the shipping name and address.
  2. Save it. Keep the .xlsx for yourself, or save a copy as CSV if it is going into another site.

For numbers that won't add up and other spreadsheet problems, the general fixes for pasted lists in our guide to exporting a list from any site apply here too.

What the export leaves out: automatic discounts, compare-at prices

  • Automatic discounts. The Discount Code column leaves out automatic discounts, per Shopify. If you run automatic discounts, check an order's page in Shopify when you need to know which applied.
  • Compare-at prices. Lineitem compare-at price can be empty, for example when the product had no compare-at price when the order was placed, or with market fixed pricing or a third-party checkout.
  • Today's product details. Since the file shows each order as placed, a current price list comes from a product export, not this one.

If you run the same report every week, keep the Items sheet, the formulas and the column list in one workbook and paste each new export into it. And if the button you wish the admin had is one only you need, our guide to building your own extension for a button the site lacks shows what that takes.

What we're building

Tabless is a browser extension that builds what you ask for from the sites you allow; nothing is typed or submitted without your OK. It isn't open yet. An export like this one is the kind of job we're building it for: asking in plain words for "last month's orders, one row each, with the date, customer, total and number of items", and getting it as a CSV or XLSX file with just those columns.

It's designed to read through the session your browser already has, so there are no API keys or passwords to hand over, and to ask before it reads each site. You sign in to Tabless with a Wix account.

FAQ

Can I choose which columns Shopify exports?

The export window lets you choose which orders and the file format, not the columns, so you get the full set. Delete the columns you don't need once the file is open, and keep that workbook to paste next month's export into.

Why didn't my export download?

Only an export of up to 50 orders, or of the current page, downloads. More than that, or an export by date, is emailed to you and to the store owner, and a large one can take hours. If it failed, Shopify sends an email saying so.

Can Tabless export my Shopify orders for me?

Not yet. Tabless isn't open, and exports like this one are among the jobs we're building it for. Join the waitlist, and we'll let you know when you can try Tabless.