Mineral Supply Risk Report
Mineral supply risk analysis for critical minerals — lithium, cobalt, gallium, rare earths, tungsten, and 16 other strategic materials — delivered as a structured dependency risk report in under 60 seconds. This actor queries 8 authoritative data sources in parallel and applies three weighted scoring models to produce a composite risk verdict from LOW_RISK to CRITICAL_DEPENDENCY with actionable recommendations.
Maintenance Pulse
90/100Cost Estimate
How many results do you need?
Pricing
Pay Per Event model. You only pay for what you use.
| Event | Description | Price |
|---|---|---|
| analysis-run | Full intelligence analysis run | $0.40 |
Example: 100 events = $40.00 · 1,000 events = $400.00
Documentation
Mineral supply risk analysis for critical minerals — lithium, cobalt, gallium, rare earths, tungsten, and 16 other strategic materials — delivered as a structured dependency risk report in under 60 seconds. This actor queries 8 authoritative data sources in parallel and applies three weighted scoring models to produce a composite risk verdict from LOW_RISK to CRITICAL_DEPENDENCY with actionable recommendations.
Supply chain managers, procurement teams, and ESG analysts no longer need to manually cross-reference UN trade databases, sanctions lists, patent filings, and World Bank governance indicators. This actor assembles all of it into a single, scored report — including the Herfindahl-Hirschman Index (HHI) for supply concentration, geopolitical fragility scoring, and substitution readiness from patent activity — so you can act on risk before it becomes a disruption.
What data can you extract?
| Data Point | Source | Example |
|---|---|---|
| 📊 Composite risk score | All 8 sources combined | 74 (0-100 scale) |
| 🔴 Risk verdict | Scoring engine | HIGH_RISK |
| 📦 HHI concentration index | UN Comtrade trade flows | 3,847 (HIGHLY_CONCENTRATED) |
| 🌍 Top supplier market share | UN Comtrade | 0.68 (68% from one nation) |
| 🏭 Supplier country count | UN Comtrade | 4 active source nations |
| ⚠️ Sanctions exposure count | OFAC + OpenSanctions | 5 entity matches |
| 🏚️ Fragile state indicators | World Bank governance | 3 governance/stability failures |
| 💹 Macroeconomic instability | IMF economic data | 2 (inflation > 10%, debt > 80%) |
| 🔬 Substitution patent count | USPTO + EPO patents | 22 alternative material patents |
| 🏢 R&D organization breadth | Patent assignees | 11 distinct organizations filing |
| 📋 Risk signals (narrative) | Composite engine | "HHI 3847 — highly concentrated supply" |
| ✅ Recommendations | Scoring logic | "Diversify supply chain — HHI indicates dangerous concentration" |
Why use Mineral Supply Risk Report?
Building a credible mineral supply risk assessment manually takes a senior analyst 2-3 days per mineral. They must pull UN Comtrade export data, calculate HHI by hand, cross-reference OFAC and OpenSanctions, check World Bank governance scores for each supplier country, source IMF debt and inflation data, review patent filings for alternative materials, and synthesize everything into a coherent verdict. At consulting rates, that is $1,500-3,000 per mineral assessed.
This actor automates the entire workflow. It fires 8 sub-actor calls in parallel — UN Comtrade, OFAC, OpenSanctions, USPTO patents, EPO patents, World Bank indicators, IMF data, and OECD statistics — waits for all responses, applies three calibrated scoring models, and pushes a structured report to the dataset. The full run completes in under 60 seconds.
Beyond speed, the Apify platform gives you infrastructure that standalone scripts cannot match:
- Scheduling — run quarterly or monthly mineral assessments automatically to track HHI trends and new sanctions exposure over time
- API access — integrate mineral risk scores directly into procurement workflows, ERP systems, or risk dashboards via Python, JavaScript, or any HTTP client
- Proxy rotation — the underlying data source actors handle network resilience through Apify's built-in proxy infrastructure
- Monitoring — receive Slack or email alerts when runs fail or when composite scores cross risk thresholds, using Apify webhooks
- Integrations — pipe results into Google Sheets for executive dashboards, HubSpot for supplier CRM records, or Make/Zapier for automated risk escalation workflows
Features
- Herfindahl-Hirschman Index (HHI) calculation from live UN Comtrade trade flow data — the same market concentration metric used by the US Department of Justice for antitrust analysis, applied to mineral supply chains
- Supply concentration scoring (35% weight) across three sub-components: HHI-derived score (max 50 points), high-risk country exposure (max 30 points), and supplier count diversity penalty (max 20 points)
- Five concentration levels with clear thresholds: DIVERSIFIED, MODERATE, CONCENTRATED, HIGHLY_CONCENTRATED, and MONOPOLISTIC
- Geopolitical fragility scoring (35% weight) combining OFAC sanctions hits (max 35 points), World Bank governance and stability indicators (max 25 points), IMF macroeconomic instability signals — inflation >10%, debt >80% of GDP (max 20 points), and OECD governance proxies (max 20 points)
- Six fragility levels: STABLE, LOW_RISK, MODERATE, FRAGILE, and CRITICAL with automatic escalation for multiple concurrent risk signals
- High-risk supplier country screening hardcoded for China, DRC (Congo), Russia, Myanmar, North Korea, and Iran — the nations responsible for the majority of critical mineral supply disruptions
- Sanctioned country list cross-references Russia, North Korea, Iran, Syria, Cuba, and Belarus against supply chain exposure
- Substitution readiness scoring (30% weight, inverted) — higher substitution availability lowers the overall risk score; measures alternative-material patent count (max 40 points), R&D organization breadth via unique patent assignees (max 30 points), and total patent volume as innovation proxy (max 30 points)
- Alternative material keyword detection across 10 patent title patterns: substitut, replac, alternative, recycl, recover, synthetic, biomass, sodium, iron phosphate, solid state
- CRITICAL_DEPENDENCY override rule — if supply concentration is MONOPOLISTIC and sanctions exposure is 2 or more hits, the verdict is automatically escalated to CRITICAL_DEPENDENCY regardless of the composite score
- Five risk verdicts: LOW_RISK, MANAGEABLE, ELEVATED, HIGH_RISK, CRITICAL_DEPENDENCY
- Parallel 8-source data collection — all sub-actor calls run concurrently with 512 MB memory allocation and 120-second timeout per source
- Supports 20+ named critical minerals: lithium, cobalt, nickel, manganese, graphite, rare earths, tungsten, titanium, vanadium, gallium, germanium, indium, antimony, tantalum, niobium, platinum, palladium, rhodium, iridium, chromium
- Industry and country context enrichment — optional parameters narrow all 8 data source queries to your specific sector and supplier geography
Use cases for mineral supply risk analysis
EV and battery manufacturer procurement
Battery manufacturers evaluating cathode chemistry face a multi-year commitment to a specific mineral mix — cobalt-rich NMC, cobalt-free LFP, or nickel-heavy NCA. Before locking into a supplier relationship, procurement teams need to know whether a 60% concentration in one country represents acceptable risk or a potential production halt. This actor quantifies that decision with an HHI score, fragility level, and specific recommendation within one minute.
Defense and aerospace supply chain due diligence
Procurement officers at defense contractors must screen strategic material supply chains for OFAC and OpenSanctions exposure before signing sourcing agreements. A gallium supplier with ties to a sanctioned entity creates compliance liability and potential contract violations. This actor cross-references both sanctions databases against the mineral's supply chain and flags any hits with a geopolitical fragility score, providing the documented evidence trail that defense procurement audits require.
ESG reporting and portfolio risk assessment
ESG analysts at asset managers and institutional investors need to quantify mineral supply chain governance risk for portfolio companies that manufacture electronics, batteries, or industrial equipment. The World Bank governance indicators and IMF macroeconomic stability data embedded in this actor provide the quantified evidence for ESG disclosures, sustainability reports, and responsible sourcing certifications.
Semiconductor company export control monitoring
Gallium and germanium export restrictions imposed by China in 2023 demonstrated how quickly a MONOPOLISTIC supply situation can become a crisis. Semiconductor companies sourcing these materials need ongoing monitoring of supply concentration and geopolitical fragility scores. Schedule this actor monthly to detect HHI increases, new sanctions exposure, or changes in substitution readiness before they affect production.
Strategic mineral stockpiling and reserve planning
Government agencies and industrial groups managing strategic reserves need to prioritize which minerals to stockpile and by how much. This actor's composite score and recommendations — "Single-source dependency — negotiate strategic reserves or long-term contracts" — provide the ranked priority list for reserve decisions, based on live trade concentration and geopolitical fragility data rather than outdated static reports.
Investment due diligence on mining companies
Private equity and venture capital firms evaluating investments in mining companies or battery material processors need to understand the supply landscape their target operates in. A cobalt miner with DRC concentration and fragile-state indicators carries a different risk profile than a domestic lithium producer. This actor delivers a structured risk framework for investment memos within minutes.
How to analyze mineral supply chain risk
- Enter the mineral name — type the critical mineral you want to assess in the Mineral field: for example,
cobalt,lithium,gallium,rare earth, ortungsten. The actor recognizes all 20+ critical minerals. - Add optional context — for more targeted results, enter an Industry (e.g.,
EV,semiconductor,defense) and a Country (e.g.,China,Congo,Russia) to focus the geopolitical and patent queries on your specific supply situation. - Click Start — the actor fires 8 data source queries in parallel and runs all three scoring models. Most runs complete in under 60 seconds.
- Download your report — go to the Dataset tab and export in JSON, CSV, or Excel. The composite score, HHI, fragility level, all signals, and recommendations are in the single output record.
Input parameters
| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
mineral | string | Yes | lithium | Critical mineral or rare earth to analyze. Examples: lithium, cobalt, gallium, rare earth, tungsten, nickel, graphite |
industry | string | No | — | Industry context for targeted query refinement. Examples: EV, semiconductor, defense, aerospace, energy |
country | string | No | — | Supplier country to focus geopolitical and sanctions analysis. Examples: China, Congo, Russia, Myanmar |
Input examples
Standard lithium EV assessment:
{
"mineral": "lithium",
"industry": "EV",
"country": "China"
}
Semiconductor gallium risk screen (no country filter):
{
"mineral": "gallium",
"industry": "semiconductor"
}
Minimal run — fastest result, broadest data:
{
"mineral": "cobalt"
}
Input tips
- Start with the mineral name only — the default settings pull data from all 8 sources without narrowing, giving the broadest trade flow and patent picture for a first assessment
- Add a country when you have a specific supplier relationship — entering
country: "Congo"focuses the OFAC, OpenSanctions, World Bank, and IMF queries on DRC-specific governance and sanctions data for more precise scoring - Use the industry parameter for patent relevance — adding
industry: "EV"ensures the OECD and UN Comtrade queries return data most relevant to battery supply chains rather than industrial or defense applications - Spell out the mineral fully — use
rare earthrather thanREE,galliumrather thanGa. The actor normalizes to lowercase but works best with English mineral names - Schedule monthly runs for ongoing monitoring — composite scores shift as sanctions lists update, HHI changes with new trade routes, and substitution patents file at EPO and USPTO
Output example
{
"mineral": "cobalt",
"compositeScore": 74,
"verdict": "HIGH_RISK",
"industry": "EV",
"country": "Congo",
"supplyConcentration": {
"score": 81,
"hhi": 3847,
"topSupplierShare": 0.68,
"supplierCount": 4,
"concentrationLevel": "HIGHLY_CONCENTRATED",
"signals": [
"HHI 3847 — highly concentrated supply",
"Top supplier controls 68% of trade — single-source dependency",
"61% of supply from high-risk countries"
]
},
"geopolitical": {
"score": 71,
"sanctionedExposure": 4,
"fragileStateExposure": 5,
"fragilityLevel": "FRAGILE",
"signals": [
"4 sanctions hits — supply chain sanctions risk",
"Multiple fragile state indicators — governance and stability concerns",
"Macroeconomic instability in supplier countries"
]
},
"substitution": {
"score": 38,
"patentCount": 22,
"alternativeMaterials": 7,
"readinessLevel": "DEVELOPING",
"signals": [
"7 alternative material patents — active substitution R&D",
"11 organizations working on alternatives — broad R&D effort"
]
},
"allSignals": [
"HHI 3847 — highly concentrated supply",
"Top supplier controls 68% of trade — single-source dependency",
"61% of supply from high-risk countries",
"4 sanctions hits — supply chain sanctions risk",
"Multiple fragile state indicators — governance and stability concerns",
"7 alternative material patents — active substitution R&D"
],
"recommendations": [
"Diversify supply chain — HHI indicates dangerous concentration",
"Sanctions risk — establish alternative sourcing from allied nations",
"Limited substitution options — invest in alternative material R&D",
"Single-source dependency — negotiate strategic reserves or long-term contracts"
],
"dataSources": {
"comtradeRecords": 48,
"ofacHits": 2,
"sanctionsHits": 2,
"usPatents": 14,
"epoPatents": 8,
"worldBankIndicators": 12,
"imfDataPoints": 9,
"oecdRecords": 6
},
"generatedAt": "2026-03-20T09:14:33.421Z"
}
Output fields
| Field | Type | Description |
|---|---|---|
mineral | string | Normalized mineral name used for all queries |
compositeScore | number | Weighted composite risk score 0-100 (higher = more risk) |
verdict | string | Risk classification: LOW_RISK, MANAGEABLE, ELEVATED, HIGH_RISK, or CRITICAL_DEPENDENCY |
industry | string | null | Industry context if provided in input |
country | string | null | Country focus if provided in input |
supplyConcentration.score | number | Supply concentration sub-score 0-100 |
supplyConcentration.hhi | number | Herfindahl-Hirschman Index (0-10,000; above 2,500 = highly concentrated) |
supplyConcentration.topSupplierShare | number | Decimal fraction held by the single largest supplier country |
supplyConcentration.supplierCount | number | Number of distinct supplier countries in trade data |
supplyConcentration.concentrationLevel | string | DIVERSIFIED, MODERATE, CONCENTRATED, HIGHLY_CONCENTRATED, or MONOPOLISTIC |
supplyConcentration.signals | string[] | Narrative signals triggered by concentration thresholds |
geopolitical.score | number | Geopolitical fragility sub-score 0-100 |
geopolitical.sanctionedExposure | number | Total OFAC + OpenSanctions entity matches |
geopolitical.fragileStateExposure | number | Count of World Bank fragile-state indicator triggers |
geopolitical.fragilityLevel | string | STABLE, LOW_RISK, MODERATE, FRAGILE, or CRITICAL |
geopolitical.signals | string[] | Narrative signals from sanctions and governance data |
substitution.score | number | Substitution readiness score 0-100 (higher = better alternatives exist) |
substitution.patentCount | number | Total patents found across USPTO and EPO |
substitution.alternativeMaterials | number | Patents matching alternative-material keywords |
substitution.readinessLevel | string | NO_ALTERNATIVES, EARLY_RESEARCH, DEVELOPING, AVAILABLE, or MATURE |
substitution.signals | string[] | Narrative signals from patent analysis |
allSignals | string[] | Combined signals from all three scoring models |
recommendations | string[] | Specific, actionable supply chain recommendations |
dataSources.comtradeRecords | number | UN Comtrade trade flow records retrieved |
dataSources.ofacHits | number | OFAC sanctions database matches |
dataSources.sanctionsHits | number | OpenSanctions database matches |
dataSources.usPatents | number | USPTO patent records retrieved |
dataSources.epoPatents | number | EPO patent records retrieved |
dataSources.worldBankIndicators | number | World Bank indicator data points retrieved |
dataSources.imfDataPoints | number | IMF economic data points retrieved |
dataSources.oecdRecords | number | OECD statistics records retrieved |
generatedAt | string | ISO 8601 timestamp of report generation |
How much does it cost to analyze mineral supply risk?
Mineral Supply Risk Report uses pay-per-run pricing — approximately $0.15 per report. Platform compute costs are included. Each run calls 8 sub-actors in parallel; the cost reflects the aggregate data source queries and scoring computation.
| Scenario | Reports | Cost per report | Total cost |
|---|---|---|---|
| Quick test | 1 | $0.15 | $0.15 |
| Small batch (key minerals) | 10 | $0.15 | $1.50 |
| Quarterly review (full portfolio) | 50 | $0.15 | $7.50 |
| Annual audit (all minerals) | 200 | $0.15 | $30.00 |
| Enterprise monitoring program | 1,000 | $0.15 | $150.00 |
You can set a maximum spending limit per run to control costs. The actor stops when your budget is reached.
Compare this to specialist supply chain risk platforms such as Resilinc, Bindchain, or custom consulting engagements at $5,000-25,000 per mineral study — with this actor, a full 20-mineral critical mineral portfolio assessment costs approximately $3.00 with no subscription commitment.
Mineral supply risk analysis using the API
Python
from apify_client import ApifyClient
client = ApifyClient("YOUR_API_TOKEN")
run = client.actor("ryanclinton/mineral-supply-risk-report").call(run_input={
"mineral": "cobalt",
"industry": "EV",
"country": "Congo"
})
for item in client.dataset(run["defaultDatasetId"]).iterate_items():
print(f"Mineral: {item['mineral']}")
print(f"Composite score: {item['compositeScore']}/100 — {item['verdict']}")
print(f"HHI: {item['supplyConcentration']['hhi']} ({item['supplyConcentration']['concentrationLevel']})")
print(f"Geopolitical fragility: {item['geopolitical']['fragilityLevel']}")
print(f"Substitution readiness: {item['substitution']['readinessLevel']}")
for rec in item.get("recommendations", []):
print(f" -> {rec}")
JavaScript
import { ApifyClient } from "apify-client";
const client = new ApifyClient({ token: "YOUR_API_TOKEN" });
const run = await client.actor("ryanclinton/mineral-supply-risk-report").call({
mineral: "cobalt",
industry: "EV",
country: "Congo"
});
const { items } = await client.dataset(run.defaultDatasetId).listItems();
for (const item of items) {
console.log(`${item.mineral}: ${item.compositeScore}/100 — ${item.verdict}`);
console.log(`HHI: ${item.supplyConcentration.hhi} (${item.supplyConcentration.concentrationLevel})`);
console.log(`Fragility: ${item.geopolitical.fragilityLevel} | Substitution: ${item.substitution.readinessLevel}`);
item.recommendations.forEach(r => console.log(` Recommendation: ${r}`));
}
cURL
# Start the actor run
curl -X POST "https://api.apify.com/v2/acts/ryanclinton~mineral-supply-risk-report/runs?token=YOUR_API_TOKEN" \
-H "Content-Type: application/json" \
-d '{"mineral": "cobalt", "industry": "EV", "country": "Congo"}'
# Fetch results (replace DATASET_ID from the run response above)
curl "https://api.apify.com/v2/datasets/DATASET_ID/items?token=YOUR_API_TOKEN&format=json"
How Mineral Supply Risk Report works
Phase 1 — Parallel data collection from 8 authoritative sources
The actor fires all 8 sub-actor calls simultaneously using Promise.all, each with a 512 MB memory allocation and a 120-second timeout. The sources queried are: UN Comtrade (trade flow records with reporter country, trade value, and commodity code), OFAC sanctions database (US Treasury restricted entities), OpenSanctions (international consolidated sanctions registry), USPTO patent search, EPO patent search, World Bank development indicators (governance, stability, rule of law scores), IMF economic data (inflation rates, debt-to-GDP, reserve levels), and OECD statistics (trade and governance proxies). All queries are enriched with the mineral name, industry context, and country focus from the input parameters. Failed sub-actor calls return empty arrays so the scoring engine always receives a complete data structure.
Phase 2 — Supply concentration scoring via HHI
The scoreSupplyConcentration function processes UN Comtrade records to extract reporter country names and trade values. It builds a country-to-value map, calculates the standard Herfindahl-Hirschman Index (sum of squared market shares multiplied by 10,000), and normalizes it to a 0-100 score. An HHI above 2,500 on the raw scale (equivalent to a score above 25 normalized) triggers the "highly concentrated supply" signal. Separately, the function calculates the share held by each country that appears in the hardcoded HIGH_RISK_SUPPLIERS list (China, DRC, Russia, Myanmar, North Korea, Iran) and applies a 40x multiplier to convert exposure fraction to risk points (max 30). Supplier count below 3 adds a maximum 20-point diversity penalty. The three components sum to a maximum of 100 and map to five concentration levels.
Phase 3 — Geopolitical fragility scoring
The scoreGeopoliticalFragility function counts entity matches across the OFAC and OpenSanctions datasets combined (each match = 5 points, capped at 35). It then iterates World Bank indicator records, looking for governance, stability, and rule-of-law indicators with values below zero or below 50, and applies a 2x multiplier for explicit conflict or fragility indicators (capped at 25 points). IMF data is scanned for inflation above 10%, debt-to-GDP above 80%, and negative reserve positions (capped at 20 points). OECD records mentioning governance or corruption reduce the OECD component (which starts at 10 when no OECD data is available). The composite fragility score maps to five levels from STABLE through CRITICAL.
Phase 4 — Substitution readiness scoring and composite assembly
The scoreSubstitutionReadiness function combines USPTO and EPO patent records. It scans patent titles for 10 alternative-material keyword patterns (substitut, replac, alternative, recycl, recover, synthetic, biomass, sodium, iron phosphate, solid state) — each match adds 5 points (max 40). Unique patent assignee organizations are counted, with 3 points each (max 30), representing R&D breadth across the industry. Total patent volume adds up to 30 additional points. The final composite score is computed as: supplyConcentration × 0.35 + geopolitical × 0.35 + (100 − substitution) × 0.30. The inversion of the substitution score means that mature substitution options actively reduce overall risk. A CRITICAL_DEPENDENCY override fires if concentration is MONOPOLISTIC and sanctions exposure is 2 or more, regardless of the composite calculation.
Tips for best results
-
Run without country or industry first. The broadest data pull captures global trade flows and patents before you narrow scope. Then run a second time with your specific country and industry to see how much they change the score — the delta reveals how concentrated your exposure is relative to the global picture.
-
Interpret HHI in context. An HHI of 2,500 is the DOJ threshold for "highly concentrated" in merger analysis. For critical minerals, values above 4,000 are common and indicate near-monopoly supply situations. A score of 3,000-3,500 for cobalt or lithium is considered baseline risk in the industry — use your sector's benchmark, not a generic threshold.
-
Use the substitution readiness level to prioritize R&D investment. If a mineral scores DEVELOPING or EARLY_RESEARCH on substitution readiness, it signals that your procurement team should also be talking to R&D about alternative chemistries. The patent assignee list in the raw data identifies which organizations are leading substitution work.
-
Schedule quarterly runs for trend detection. The composite score is a point-in-time calculation. Run the same mineral quarterly and log
compositeScore,hhi,sanctionedExposure, andfragilityLevelto a Google Sheet via the integration. An HHI rising from 3,200 to 3,800 over two quarters signals accelerating concentration risk before it becomes a crisis. -
Pair with the Company Deep Research actor for supplier-level analysis. This actor assesses the mineral supply landscape at the country and market level. To assess a specific supplier company, pipe its name into Company Deep Research to get financial health, litigation history, and ESG signals at the entity level.
-
For regulated industries, save the
dataSourcesobject. Defense contractors and publicly traded companies may need to document their due diligence process. ThedataSourcesobject records exactly how many records were retrieved from each authoritative database, providing an audit trail that "8 sources were queried on [generatedAt date]." -
Cross-reference signals with the Waterfall Contact Enrichment actor. If signals flag a specific mining company or trading entity from the OpenSanctions results, use Waterfall Contact Enrichment to find the contacts at alternative supplier companies you should be approaching.
Combine with other Apify actors
| Actor | How to combine |
|---|---|
| Company Deep Research | After identifying a high-risk supplier country, run Company Deep Research on the specific mining company to get financial health, ownership structure, and litigation signals at the entity level |
| Waterfall Contact Enrichment | Use supply risk signals to identify alternative supplier regions, then enrich contacts at qualifying mining or trading companies through the 10-step contact cascade |
| B2B Lead Qualifier | Score alternative supplier companies against 30+ risk signals before adding them to procurement pipelines — combines well with the mineral risk context to qualify replacement vendors |
| Website Tech Stack Detector | Detect the digital infrastructure of supplier companies identified in your supply risk research to assess their operational maturity and verify they operate legitimate businesses |
| Trustpilot Review Analyzer | Cross-reference mining service companies with Trustpilot and BBB reviews to surface reputational signals before entering procurement negotiations |
| B2B Lead Gen Suite | Build a full outreach pipeline to alternative mineral suppliers — start with mineral risk signals, generate leads in safe-country jurisdictions, and score them for procurement fit |
| HubSpot Lead Pusher | Push high-scoring alternative supplier contacts found during mineral risk analysis directly into your HubSpot CRM with risk context attached as custom properties |
Limitations
- Trade data lag — UN Comtrade trade flow data is typically 6-18 months behind current trade. The HHI and supplier share calculations reflect recent historical patterns, not live commodity flows.
- No real-time price data — the actor assesses supply concentration and geopolitical risk, not spot prices or commodity market volatility. For price intelligence, combine with a dedicated commodity data source.
- Patent data covers filing intent, not commercial deployment — a high substitution readiness score means researchers are filing patents on alternatives, not that those alternatives are commercially available at scale. Readiness levels of DEVELOPING or EARLY_RESEARCH should be interpreted as "years away."
- Sanctions databases are queried by keyword, not entity ID — the OFAC and OpenSanctions searches use the mineral name and country as query terms. Highly specific entity screening requires a dedicated compliance tool with exact company names.
- World Bank and IMF data availability varies by country — for less-documented supplier nations, governance indicator coverage may be sparse, which can cause the geopolitical fragility score to understate risk. Thin data from a poorly-documented supplier country is itself a risk signal.
- The actor does not access paywalled commodity databases — Bloomberg, S&P Global Commodity Insights, and Wood Mackenzie data are not included. For professional commodity intelligence, use this actor as a first-pass screen before deeper specialist research.
- Country parameter narrows rather than isolates — entering
country: "China"focuses queries toward China but does not exclude other supplier country data from the HHI calculation. Trade flow data is global by default. - Single output record per run — each run produces one report for one mineral. To compare multiple minerals, run the actor once per mineral and aggregate results in your own system or via a scheduled workflow.
Integrations
- Zapier — trigger a mineral risk report automatically when a new supplier is added to a procurement spreadsheet, then post the composite score to a Slack channel
- Make — build multi-step workflows: run mineral risk quarterly, compare composite scores to previous runs stored in an Airtable, and create tasks in project management tools when scores rise above a threshold
- Google Sheets — export mineral risk reports directly to a tracking sheet; log
compositeScore,hhi,fragilityLevel, andreadinessLevelover time to build a trend dashboard for board reporting - Apify API — integrate mineral risk scoring into procurement platforms, ERP systems, or supplier approval workflows via REST API with JSON output
- Webhooks — receive a POST callback when a mineral risk run completes; use this to trigger automated alerts in your internal risk management system when scores exceed acceptable thresholds
- LangChain / LlamaIndex — feed mineral risk reports into AI supply chain advisory tools; the structured signals and recommendations make high-quality RAG context for LLM-based procurement analysis
Troubleshooting
-
Composite score seems low despite known supply concentration — the actor depends on UN Comtrade trade data matching the mineral query. Obscure or abbreviated mineral names (e.g., "REE" instead of "rare earth") may return sparse Comtrade records, resulting in an artificially low HHI. Try the full English mineral name and verify that
dataSources.comtradeRecordsis above 10 for meaningful HHI calculation. -
Substitution readiness shows NO_ALTERNATIVES for a mineral with known alternatives — the substitution scoring scans USPTO and EPO patent titles for specific keyword patterns. If the relevant patents describe the alternative by a chemical name not in the keyword list (e.g.,
sodium-ioninstead ofsodium), they will not score. Checksubstitution.patentCountin the output — if it is 0 or very low, the patent search returned limited results for that query term. -
Run completes but all dataSources show 0 records — this indicates that one or more sub-actors returned empty results for the query. Check that the mineral name is spelled correctly and that no API quota limits have been hit on the underlying data source wrappers. Re-running typically resolves transient failures since sub-actors that fail return empty arrays rather than crashing the run.
-
Geopolitical score is high but I do not source from flagged countries — the geopolitical score reflects the global supply landscape for the mineral, not your specific sourcing. If 65% of global cobalt comes from DRC, the fragility score will be elevated even if you source from a different country. Use the
countryinput parameter to focus the geopolitical analysis specifically on your supplier nation. -
CRITICAL_DEPENDENCY verdict with a moderate composite score — the CRITICAL_DEPENDENCY override fires when
concentrationLevelis MONOPOLISTIC andsanctionedExposureis 2 or more, regardless of the composite number. This is intentional: a monopoly supplier with active sanctions exposure represents existential supply chain risk that a weighted average score would understate.
Responsible use
- This actor queries publicly available trade databases, government sanctions registries, patent filings, and international statistical organizations. No private or proprietary data is accessed.
- Sanctions data from OFAC and OpenSanctions reflects publicly published lists. Always verify matches through official sources before taking compliance action or restricting business relationships.
- Comply with all applicable trade compliance, export control, and data protection regulations when using supply chain risk data in procurement decisions.
- Do not use this actor's output as the sole basis for compliance determinations — it is a screening and research tool, not a legal compliance opinion.
- For guidance on web scraping and data use legality, see Apify's guide.
FAQ
How does mineral supply risk analysis work with this actor? The actor queries 8 data sources in parallel — UN Comtrade for trade flows, OFAC and OpenSanctions for sanctions, USPTO and EPO for substitution patents, World Bank and IMF for governance and economic stability, and OECD for statistics — then applies three weighted scoring models (supply concentration 35%, geopolitical fragility 35%, substitution readiness 30% inverted) to produce a composite score and verdict.
Which critical minerals can I analyze with this tool? The actor works with any mineral but is tuned for 20 named critical minerals: lithium, cobalt, nickel, manganese, graphite, rare earths, tungsten, titanium, vanadium, gallium, germanium, indium, antimony, tantalum, niobium, platinum, palladium, rhodium, iridium, and chromium. You can also analyze other industrial minerals by entering their name — results will vary based on data availability.
What is the Herfindahl-Hirschman Index and why does it matter for minerals? The HHI measures market concentration: the sum of squared market shares multiplied by 10,000. An HHI below 1,500 indicates a competitive market; 1,500-2,500 is moderately concentrated; above 2,500 is highly concentrated. For critical minerals, HHI values of 4,000+ are common and signal dangerous single-country dependency. A supply disruption in one country can cripple semiconductor fabs, EV factories, or defense production lines.
How accurate is the supply concentration scoring?
Accuracy depends on UN Comtrade data quality for the mineral queried. Well-traded commodities like cobalt and lithium have extensive Comtrade records, producing reliable HHI estimates. Niche minerals or those traded under broad HS codes may have sparse records. Always check dataSources.comtradeRecords — scores based on fewer than 10 records should be treated as indicative rather than definitive.
How is this different from commercial supply chain risk platforms like Resilinc or Bindchain? Commercial platforms charge $5,000-25,000+ per study or $50,000+/year for platform access, and their analysis is often static and quarterly. This actor runs on live data from authoritative public sources and costs $0.15 per report. It does not have the breadth of proprietary supplier network mapping that enterprise platforms offer, but it provides the quantitative risk scores — HHI, sanctions exposure, fragility level — that drive the most critical decisions, at a fraction of the cost.
Can I track mineral supply risk over time?
Yes. Schedule the actor to run monthly or quarterly using Apify's built-in scheduler. Log compositeScore, hhi, fragilityLevel, and sanctionedExposure to a Google Sheet on each run. Rising HHI or new sanctions hits will appear in the trend data before they manifest as supply disruptions.
What does the CRITICAL_DEPENDENCY verdict mean? CRITICAL_DEPENDENCY is the highest risk classification. It fires when the composite score reaches 80 or higher, or when two conditions are simultaneously true: the supply concentration level is MONOPOLISTIC and the sanctions exposure count is 2 or more. This override exists because a monopoly supplier with active sanctions exposure represents an existential supply chain risk that a weighted average could theoretically miss.
How long does a typical mineral supply risk run take? Most runs complete in 45-90 seconds. All 8 sub-actor calls run in parallel with a 120-second timeout each. The bottleneck is typically the slowest data source to respond — patent searches occasionally take longer than trade or sanctions queries. If a sub-actor times out, it returns an empty array and the run continues with the remaining data.
Is it legal to use UN Comtrade, OFAC, and patent data this way? Yes. UN Comtrade, OFAC sanctions lists, OpenSanctions, USPTO patents, EPO patents, World Bank indicators, IMF data, and OECD statistics are all publicly published by their respective organizations for research and analysis purposes. Using them for supply chain risk assessment is consistent with their intended purpose. For guidance on data use legality, see Apify's guide.
Can I run mineral supply risk analysis for multiple minerals in one run? No — each run analyzes one mineral and produces one output record. To assess a full critical mineral portfolio, run the actor once per mineral. You can trigger multiple runs in parallel via the API or set up a scheduled workflow in Make or Zapier that runs each mineral on a staggered cadence.
What happens if one of the 8 data sources returns no results?
Failed or empty sub-actor responses return empty arrays, which are handled gracefully by the scoring engine. The run continues and produces a report with the available data. The dataSources object in the output records exactly how many results each source returned, so you can see which sources contributed to the scoring and which were sparse.
Can I use the mineral supply risk report output with AI tools or LLMs?
Yes. The structured JSON output — particularly allSignals and recommendations — makes high-quality context for LLM-based supply chain advisory tools. The Website Content to Markdown actor can help convert supplementary research into LLM-ready format, and the Apify LangChain/LlamaIndex integration supports direct dataset consumption in RAG pipelines.
Help us improve
If you encounter issues, you can help us debug faster by enabling run sharing in your Apify account:
- Go to Account Settings > Privacy
- Enable Share runs with public Actor creators
This lets us see your run details when something goes wrong, so we can fix issues faster. Your data is only visible to the actor developer, not publicly.
Support
Found a bug or have a feature request? Open an issue in the Issues tab on this actor's page. For custom solutions or enterprise integrations, reach out through the Apify platform.
How it works
Configure
Set your parameters in the Apify Console or pass them via API.
Run
Click Start, trigger via API, webhook, or set up a schedule.
Get results
Download as JSON, CSV, or Excel. Integrate with 1,000+ apps.
Use cases
Sales Teams
Build targeted lead lists with verified contact data.
Marketing
Research competitors and identify outreach opportunities.
Data Teams
Automate data collection pipelines with scheduled runs.
Developers
Integrate via REST API or use as an MCP tool in AI workflows.
Related actors
Bulk Email Verifier
Verify email deliverability at scale. MX record validation, SMTP mailbox checks, disposable and role-based detection, catch-all flagging, and confidence scoring. No external API costs.
GitHub Repository Search
Search GitHub repositories by keyword, language, topic, stars, forks. Sort by stars, forks, or recently updated. Returns metadata, topics, license, owner info, URLs. Free API, optional token for higher limits.
Website Content to Markdown
Convert any website to clean Markdown for RAG pipelines, LLM training, and AI apps. Crawls pages, strips boilerplate, preserves headings, tables, and code blocks. GFM support.
Website Tech Stack Detector
Detect 100+ web technologies on any website. Identifies CMS, frameworks, analytics, marketing tools, chat widgets, CDNs, payment systems, hosting, and more. Batch-analyze multiple sites with version detection and confidence scoring.
Ready to try Mineral Supply Risk Report?
Start for free on Apify. No credit card required.
Open on Apify Store