Three ways to bulk edit product descriptions in Shopify: the built-in bulk editor, a CSV export and re-import, and an AI draft queue. The first two are already in your admin and cost nothing - I do those first, properly.
Everything here was run in a real Shopify admin, including the two CSV import errors that nothing seems to document. Timings are stopwatched, not estimated.
WRITTEN VERSION (with the CSV column table you can copy)
https://arvio.a.xyz/blog/bulk-edit-pr...
CHAPTERS
0:00 What this video covers
0:16 The problem: descriptions that are empty
0:36 Method 1 - Shopify's built-in bulk editor
0:49 Where the Description column hides
1:16 Typing one description - the honest timing
1:52 "Editing N products" is lazy loading, not a limit
2:03 Method 2 - export, edit and re-import a CSV
2:32 The Overwrite setting you must tick
2:55 Why a description-only CSV fails
3:18 The five columns that actually import
3:40 What neither built-in method does
3:55 What typing 500 of them costs
4:09 Method 3 - finding and installing Arvio
4:39 It refuses to guess, and asks first
5:29 23 drafts, nothing written to the store
6:08 Which method for which catalogue
6:29 Everything else Arvio can do
THE CSV BIT, IN TEXT (this is the part people come back for)
A description-only CSV does not import. Handle + Body (HTML) on their own gets you
"A product title column is required." Add the title, and if the product has variants
you get "Product options input is required when updating variants."
What actually works is five columns:
Handle - matches the existing product
Title - required even when you're not changing it
Option1 Name - required if the product has variants
Option1 Value - one row per variant
Body (HTML) - this is the description
Tick "Overwrite products with matching handles" or nothing lands. It matches on handle,
not on title, and it only replaces the columns that are in your file - images, prices
and inventory are left alone.
ONE THING THE VIDEO DOESN'T MENTION
Shopify's current CSV template renames two of those columns: "Handle" is now "URL handle"
and "Body (HTML)" is now "Description". Both sets still import - the 50-product catalogue
you see in this video was imported with the older names on 19 August 2026. The written
version above has the full table, plus the rule that costs people data: a column you leave
OUT is safe, but a column you include and leave BLANK erases the existing value.
MEASURED IN THIS VIDEO
Typing one 147-character description: 19.6 seconds (typing only, not writing it), at a
steady 110 ms per keystroke - faster than most people type, so treat it as a floor.
That's about 16 minutes for 50 products and nearly 3 hours for 500.
DISCLOSURE
Method 3 uses Arvio, which is made by my team. It's last in the video and timestamped
so you can skip it - the two built-in methods above need nothing from us.
Arvio on the Shopify App Store:
https://apps.shopify.com/arvio?utm_so...
Descriptions are only one thing Arvio does - it also handles store SEO audits, weak
titles, alt text, metafields, bulk price changes, stock and blog posts, all in plain
language, and you approve every change.
Next in this series: bulk editing prices, and adding alt text to every product.
If there's another bulk edit you're stuck on, leave it in the comments.