Amazon Product Research & Niche Analyzer
Pricing
$100.00 / 1,000 completed analyses
Amazon Product Research & Niche Analyzer
Compare Amazon niches using your product data or an Apify Dataset. Analyze brand competition, review barriers, prices and demand signals. $0.10 per qualifying analysis; no analysis fee for demo or insufficient data. Does not scrape Amazon.
Pricing
$100.00 / 1,000 completed analyses
Rating
0.0
(0)
Developer
Jin Murata
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
7 days ago
Last modified
Categories
Share
Turn Amazon product rows into a structured niche comparison: demand signals, brand concentration, review barriers, price distribution and data-quality warnings.
For Amazon sellers, researchers and automation builders who already have product data and want a consistent first-pass comparison before deeper research. This Actor does not scrape Amazon or buy data. Use data you are authorized to process.
Pricing at a glance
$0.10 per completed, qualifying analysis — not per product row. One run analyzes one niche with up to 200 product rows. Demo runs and INSUFFICIENT_DATA results do not trigger the analysis fee. Set a run budget of at least $0.10 for qualifying analyses.
What you can check
| Research question | Report evidence |
|---|---|
| Is the sample dominated by a few brands? | Brand concentration and possible product-family groupings |
| Do established listings have a large review advantage? | Review-count statistics |
| What price range does this sample cover? | Price distribution |
| Are demand signals available? | Supplied BSR and recent-purchase signals, plus missing-data warnings |
Use this as a repeatable first-pass screening step for existing product data. It does not calculate profit or guarantee a profitable niche.
Try a sample first
In the input form, select Demo (bundled sample) and start the Actor. No product data or API token is needed for this demo. The sample is synthetic, and the analysis fee is zero.
If you prefer JSON:
{"mode": "demo", "demoFixture": "sufficient_market"}
Open Analysis results for the dataset or Full JSON report for the complete result. A run produces one analysis record containing the analyzed product rows.
The bundled example has 10 valid rows and returns an OPPORTUNITY label. These are synthetic demonstration results, not current Amazon market findings or evidence of profitability.
To see the insufficient-data response:
{"mode": "demo", "demoFixture": "owala_insufficient"}
Analyze your own data
Choose one data source per run.
| Mode | What you supply | Data access |
|---|---|---|
demo | Nothing; optionally select a fixture | Bundled sample only |
products | Keyword and a non-empty array of product objects | Processes supplied rows |
dataset | Keyword and your existing Apify Dataset ID | Reads up to the requested limit from that dataset |
For products, use the following shape with your actual data. This two-row synthetic example intentionally cannot support a niche conclusion:
{"mode": "products","keyword": "example niche","maxProducts": 2,"products": [{"asin": "B0EXAMPLE1", "title": "Example product A", "brand": "Example A", "price": 20, "reviewCount": 100},{"asin": "B0EXAMPLE2", "title": "Example product B", "brand": "Example B", "price": 25, "reviewCount": 200}]}
For an existing dataset:
{"mode": "dataset","keyword": "your niche","sourceDatasetId": "YOUR_DATASET_ID","maxProducts": 30}
The run must have permission to read that dataset. Do not paste API tokens into the input. For local dataset runs, configure APIFY_TOKEN in your execution environment.
Useful fields include asin, title, brand, price, reviewCount, bsr and boughtInPastMonth. Omit unavailable values or use null. Do not invent values to improve the score.
Connect a product dataset to your research workflow
- Collect a relevant niche sample using your existing data source.
- Check that each row contains
asinandtitle. Useful additional fields arebrand,price,reviewCount,bsrandboughtInPastMonth. A different scraper's output may require field mapping. - Copy that run's default Dataset ID into Apify Dataset ID, select Dataset mode, and enter a niche label.
- Set Max products to analyze to the sample size you intend to read (up to 200), then run the analysis.
- Inspect the evidence and warnings before comparing candidates. Keep sampling methods and marketplaces consistent across comparisons.
For a useful conclusion, the engine requires at least 8 valid products and 3 distinct product families, plus sufficient completeness and sample coverage. Meeting the row count alone does not guarantee a qualifying analysis.
To automate repeated research, run your data-collection step first, pass its dataset ID as sourceDatasetId, and run this Actor once per niche. This is a workflow recipe; compatibility with every upstream scraper has not been tested. This Actor itself does not start the collection step or refresh the source dataset.
Use Junglee Amazon Product Scraper output
Already collecting products with Junglee Amazon Product Scraper? Pass its default Dataset ID to this Actor in Dataset mode. No manual reshaping is needed for the documented fields below.
| Collector field | Used as |
|---|---|
price.value | Numeric price |
stars | Rating, when a canonical rating is not supplied |
reviewsCount | Review count |
seller.name | Seller name |
breadCrumbs | Category path |
The adapter keeps missing values missing, records mapped-row counts in actor_meta.upstream_mapping, and rejects conflicting explicit price currencies. It does not convert currencies or infer sales. Use one niche and one marketplace per run. These mappings are independently implemented; this product is not endorsed by Junglee.
Chain collection and analysis
In the collector's Integrations tab, configure Run Actor to start this Actor after a successful run. Use the following input with string interpolation enabled:
{"mode": "dataset","keyword": "your collection niche","marketplace": "com","sourceDatasetId": "{{resource.defaultDatasetId}}","maxProducts": 10}
Set maxProducts to your intended sample size, up to 200. The example uses 10 to keep the initial test small. Set the target run to latest, 256 MB, 60 seconds and a $0.10 maximum event charge. The collector's own charges are separate. A successful collection can still produce insufficient data; inspect the output before making a decision.
See Apify's Actor-to-Actor integration instructions for event variables and test controls. Configure the link once in your own account; this Analyzer never launches or pays for the upstream scraper itself. Webhook delivery can be duplicated, so inspect duplicate triggers before retrying; billing is once per qualifying run, not deduplicated across separate runs.
Try the synthetic sample first.
Read the result
| Result | How to use it |
|---|---|
OPPORTUNITY | Candidate for further research under the current heuristic |
NEUTRAL | Mixed signals; inspect the supporting evidence |
CROWDED | Competition signals warrant closer investigation |
INSUFFICIENT_DATA | Sample quality or diversity is inadequate; inspect the listed reasons |
The report includes data completeness, possible product-family groupings, price statistics, demand proxies, confidence and the thresholds used. Scores and confidence are heuristic indicators, not calibrated success probabilities. Demand proxies are not verified sales. Thresholds are provisional and have not been validated against customer business outcomes.
Limits and costs
- One keyword/niche per run; maximum 200 rows.
- Console/API input schema accepts
maxProductsfrom 1 to 200. Direct wrapper calls above 200 are capped and disclosed inactor_meta. - Only the first requested dataset rows are read; this is not a random or representative market sample.
- No paid upstream Actor is started.
- Active analysis price: USD 0.10 per completed non-demo analysis with sufficient data, once per run. Demo and INSUFFICIENT_DATA outputs do not trigger this analysis fee. The Store pricing tab shows the current price.
- With pay-per-event-only pricing, platform usage is not added to the user's event bill. Platform costs can still affect developer proceeds; this is not a promise of zero operating costs.
- If the run budget is below the event price, the billable report is not delivered or charged. Results are saved before the charge request. An uncertain billing response stops the run and is not automatically retried; contact support with the run ID. A saved report may remain available even when charging fails.
- Results do not include sourcing costs, shipping, advertising, Amazon fees or net profit.
Data handling
On Apify, inputs and outputs are handled by the platform. The Actor writes its full analysis, including normalized product rows, to the run dataset and the OUTPUT key-value record. Storage retention and access follow your platform settings; data is not guaranteed to disappear when a run ends.
The code also writes local usage events containing the keyword, marketplace, outcome and an optional customer reference. This local file is not a verified cross-run customer or payment ledger. Avoid personal or confidential information in keywords and input rows.
Troubleshooting
- Rejected input: check mode, field types and product rows.
- Dataset access failure: check the ID and the run's permissions.
- Insufficient data: inspect the report's reasons; add relevant, diverse, complete rows instead of filling missing values with guesses.
- Unexpected label: inspect thresholds and evidence before using the result.
Use the Actor's Issues tab for support. Share a redacted input example and the error message, never tokens or confidential datasets.