Automate your Etsy store
You make things, but every product means a listing, photos, a keyword-stuffed title, tags, prices, and then renewals and stock updates forever. A bot can take that listing grind off your hands, updating your Etsy shop from a sheet and pulling your orders and sales into one. There are three ways to start, with no code, with code, or with a Claude skill.
What I mean by automating your Etsy store
Automating your Etsy store means a bot handles the repetitive seller work in Shop Manager. Updating prices and stock across listings from a sheet, refreshing titles and tags, renewing listings, pulling your orders and sales into a spreadsheet, and gathering market data to price against. It is the back-office upkeep of a shop you run, done for you, so the admin stops eating the hours you would rather spend making.
The listing grind is the tax on making
On Etsy you are a maker first, but the platform is built around listings. Every product needs one, with photos, a title packed with keywords, thirteen tags, variations, and a price, and then it needs renewing and restocking and editing as things change. Multiply that by a catalogue and the listing grind becomes the tax you pay to sell what you made.
Etsy's Shop Manager has a few bulk tools, and there is an API if you get approved, but most of the day-to-day is still one listing at a time. That is the part a bot is good at. Feed it your listings from a sheet, let it update the fields across the shop, and the grind that ate your evenings runs on its own. You get back to making.
Who this is for
This is for the solo maker or small Etsy shop without a team. You would rather spend your time on the product than on Shop Manager, but the listings, the renewals, and the stock updates do not do themselves. You are a maker, not a developer, which is the point of doing this without code. No-coders and coders both, since you can build it without code and drop into code when you want.
How I'd approach it
Put your shop in a sheet. One row per listing, columns for the title, price, stock, and tags. Point the bot at Shop Manager, and let it open each listing and update the fields to match the row. Start with the change you make most, usually a price or stock update, and get one listing right before you run the whole catalogue. Run it on your own shop with your own logged-in session.
Sheet to shop, one listing first, then the catalogue. I would lay out the first draft with Build with description.
Automate your Etsy store from a description
Describe the update in plain words in the Chrome extension and it builds the steps for you. Give it a few short lines, check what it made, and run it. Explore no-code. Note: Build from description is coming very soon. In the meantime you can still use the no-code builder.
To the right is an example. Describe the update for your shop, and the AI lays out the steps.
Chrome extensionInstructions
- Open Shop Manager and sign in29 / 500
- Read the next listing and its new price from a Google Sheet59 / 500
- Open that listing17 / 500
- Update the price and the stock30 / 500
- Save, then move to the next row31 / 500
Automate your Etsy store in code
Build with code. If you would rather script it yourself, this is the path. Explore code
Connect Playwright (or Puppeteer) to our cloud Chromium and write the same scripts you'd run locally, without managing the browser.
Code toolimport { chromium } from "playwright";
const browser = await chromium.connectOverCDP(
`wss://cdp-lb.axiom.ai/?token=${process.env.AXIOM_API_KEY}`
);
try {
const context = browser.contexts()[0];
const page = context.pages()[0] ?? await context.newPage();
// Your listings and their new values, from your sheet
const listings = [
{ url: "https://www.etsy.com/your-shop/listing/111", price: "24.00", stock: "8" },
{ url: "https://www.etsy.com/your-shop/listing/222", price: "18.50", stock: "3" },
];
for (const item of listings) {
// Open the listing's edit page on your own logged-in session
await page.goto(`${item.url}/edit`);
await page.getByLabel("Price").fill(item.price);
await page.getByLabel("Quantity").fill(item.stock);
await page.getByRole("button", { name: "Save" }).click();
await page.waitForSelector(".saved");
}
} finally {
await browser.close();
}
Build with a Claude skill
Build no-code or code bots with a skill.
Add the Claude skill and describe the shop update you need. It builds the bot for you, no-code or code, updating listings from a sheet or pulling your orders out.

What can you automate?
The Shop Manager grind, for the shop you run. A couple of cases worth knowing first.
Works well
- Updating prices and stock from a sheet
- Refreshing titles and tags across listings
- Renewing listings
- Pulling orders and sales into a sheet
- Gathering market data to price against
Harder
- Uploading photos for new listings
- Variations with many options
- 2FA on the account
Don't try
- Scraping buyers' personal details
- Copying another shop's listings or photos
- Anything against Etsy's terms
What I'd watch out for
Shop Manager is a big app behind a login, so a few things trip up a shop bot. Here is what I would watch for.
Listing fees still apply
Renewing and creating listings can cost a fee each time. A bot that renews on a loop can run up charges fast, so cap what it does and check the fee before you automate a renewal.
Match the sheet to the fields
Updating from a sheet works when the columns line up with the listing fields, the price, the stock, the title. Pick each field with the selector tool, and run one listing before the whole shop.
Use your own session
Sign in as yourself on the shop you own, and store the cookies so the bot keeps the session rather than logging in fresh each run.
Save and confirm
Etsy saves a listing when you tell it to, and a bot that moves on too fast can skip the save. Wait for the confirmation before the next listing, so an update is not lost.