Competitor Price Audit
Weekly competitor pricing across 3 product categories, summarized by GPT, used to make repricing calls.
Problem
Minerva Beauty wanted to see what their competitors were charging every week across hundreds of products in three categories: salon chairs, shampoo bowls, and styling stations. Competitor sites all use different setups (Shopify, BigCommerce, custom carts), so prices show up in different places on each one. On top of that, one major competitor blocks fast scraping. Doing it by hand wasn’t going to work.
Approach
I built a Python scraper that handles each competitor’s site differently. Some are built on Shopify, some on BigCommerce, some on custom platforms, and each one structures its product data its own way. The scraper knows how to read all three. It pulls the real price for every product (not sale labels or “was $X” tags) and matches each one back to the master catalog cleanly.
One competitor blocks fast scraping, so the scraper paces itself there (one request at a time, with a short delay) to stay under the radar while running full-speed on the rest. Anything that fails on one run gets retried the next.
A single batch script runs all three categories in order and emails the resulting Excel reports to the team. The team feeds the reports into a custom GPT that points out big price gaps, where they’re getting undercut, and where there’s room to raise prices. From there they either reprice the matching products or watch what happens to sales.
Follow-up
I built a smaller, sharper report covering just the top 30 to 50 best-selling products and their competitor prices, so leadership has a quick weekly read alongside the full audit.
Result
It went from “nobody has time to check” to a Monday email with the latest competitor prices and a short list of moves to consider. Pricing calls are now backed by data instead of guesses.