The global supplements and nutraceuticals market is enormous, crowded, and almost comically opaque to compare. Two "Vitamin C 1000mg" listings can differ in serving count, form (tablet vs liposomal), fillers, certifications, subscription discounts, and unit economics — while looking identical in a search grid. For brands, retailers, formulators, and market analysts, the answerable version of "what's happening in this category" lives in structured extraction from the two shelves that matter most globally: Amazon (the discovery battlefield) and iHerb (the specialist reference shelf with unusually clean data).
This tutorial from Actowiz Solutions walks the category-specific extraction problem: what fields matter, the normalization that makes supplements comparable, working Python patterns, and the analyses the data unlocks. It pairs naturally with our pharma pricing and monsoon OTC work — same infrastructure, different shelf.
{
"record_id": "supp-2026-08-12-118842",
"retailer": "iherb.com",
"collected_at": "2026-08-12T04:20:11Z",
"brand": "SampleNutra",
"title_raw": "Vitamin D3 5000 IU, 120 Softgels",
"form": "softgel",
"active_ingredients": [{"name": "vitamin_d3", "dose_value": 125, "dose_unit": "mcg", "iu_equiv": 5000}],
"serving_size": 1,
"servings_per_container": 120,
"price": {"list": 11.99, "subscription": 10.19, "currency": "USD"},
"price_per_serving": 0.085,
"certifications": ["non_gmo", "third_party_tested"],
"rating_avg": 4.7,
"review_count": 21403,
"review_themes": ["potency praised", "size easy to swallow"],
"rank_in_category": 14,
"lineage_id": "lin-6621-s"
}
UNIT_TO_MCG = {"mcg": 1, "mg": 1000, "g": 1_000_000}
IU_FACTORS = {"vitamin_d3": 0.025, "vitamin_a_retinol": 0.3, "vitamin_e": 0.67} # mcg per IU
def normalize_dose(name, value, unit):
if unit == "iu":
return value * IU_FACTORS.get(name, float("nan"))
return value * UNIT_TO_MCG[unit]
def price_per_active_gram(price, dose_mcg, servings):
total_active_g = dose_mcg * servings / 1_000_000
return round(price / total_active_g, 2) if total_active_g else None
Three normalization rules from production:
Supplement reviews carry category-specific gold: efficacy language ("sleep improved in two weeks"), side-effect mentions, taste/size complaints for gummies and softgels, and repurchase declarations ("third bottle"). Theme extraction over these (with reviewer identity masked at the edge, as always) yields per-SKU efficacy-perception and tolerability indices — inputs both marketing and formulation teams use. Filter hard for incentivized and AI-generated review patterns; this category attracts both at above-average rates.
| Segment | Median $/Serving* | Range* | Subscription Discount Norm* | Certification Premium* |
|---|---|---|---|---|
| Value brands | 0.06 | 0.04–0.09 | 15% | — |
| Mainstream | 0.10 | 0.07–0.14 | 10–15% | +18% for 3P-tested |
| Premium/liposomal | 0.28 | 0.19–0.45 | 5–10% | Baked in |
Sample data — illustrative of Actowiz deliverable format.
From this layer: white-space maps (dose × form × price cells with weak competition), certification premium quantification (what "third-party tested" is worth per category), subscription-economics benchmarking, rank-vs-price elasticity reads during promotions, and ingredient-trend tracking — the ashwagandha→magnesium-glycinate→creatine-gummies succession is fully visible in listing and review data before it hits trade press.
Product, price, and public review data are standard competitive-intelligence targets; the category-specific care points are health-claim handling (extract claims as data; publishing derived advice is a different business and not this one) and reviewer privacy (identity masked at the edge, never stored). India-market programs inherit the DPDP posture from our compliance guide; US/EU programs the GDPR/CCPA mapping. Public catalog data only, lineage throughout.
Because container sizes and doses vary wildly — a cheaper bottle is often the more expensive supplement. Per-serving and per-active-gram normalization is the only honest comparison basis in the category.
OCR-assisted panel parsing feeds an LLM structuring pass that outputs typed ingredient/dose records, validated against declared fields where platforms provide them — the hybrid pattern from our agentic-extraction work.
Only partially — blends without disclosed splits are flagged rather than force-normalized. Blend prevalence itself is a useful transparency signal per category.
A pilot on one category (e.g., Vitamin D or magnesium, USA) typically delivers in 2–3 weeks. Contact Actowiz Solutions to scope your shelf.
You can also reach us for all your mobile app scraping, data collection, web scraping , and instant data scraper service requirements!
Our web scraping expertise is relied on by 4,000+ global enterprises including Zomato, Tata Consumer, Subway, and Expedia — helping them turn web data into growth.
Watch how businesses like yours are using Actowiz data to drive growth.
From Zomato to Expedia — see why global leaders trust us with their data.
Backed by automation, data volume, and enterprise-grade scale — we help businesses from startups to Fortune 500s extract competitive insights across the USA, UK, UAE, and beyond.
We partner with agencies, system integrators, and technology platforms to deliver end-to-end solutions across the retail and digital shelf ecosystem.
Wegmans Grocery Product Data Extraction helps retailers track prices, products, availability, and assortment changes to improve grocery market intelligence and decisions.
Track Scrape Ready-to-Cook Cut Veg Product Data from Blinkit TN to monitor prices, availability, SKUs, and trends for smarter retail insights.
Brazil Car Rental Pricing Intelligence Report 2026 reveals rental price trends, market shifts, competitor rates, and opportunities for smarter pricing.
Whether you're a startup or a Fortune 500 — we have the right plan for your data needs.