Every stock we cover gets one number from 0 to 100. This page documents exactly how that number is produced — the metrics, the thresholds, the weights, and the sector-specific adjustments. These tables are generated from the live scoring code, not written by hand, so what you read here is literally what runs when a report is built.
Each bucket scores six metrics from 0–100 and takes their mean. The overall score is the weighted average of the three. Higher always means a stronger fundamental profile.
A metric with no data is skipped, never penalized — it drops out of both the bucket mean and the coverage count. That keeps a thin-data company from looking artificially strong or weak.
Every report shows how much data backs its score, e.g. Data coverage: 16/18 metrics · Confidence: High. Coverage of 80%+ is High, 55–79% Medium, below that Low.
When fewer than 40% of metrics are available, we withhold the profile label entirely and show “Limited data” instead. A categorical verdict computed from a handful of metrics isn’t defensible, so we don’t publish one.
The label is derived from the same 0–100 number — it describes the company’s fundamental profile, not an instruction to trade. stockcue does not issue buy, sell or hold recommendations.
One universal threshold set would be analytically naive: banks are levered by design, REIT earnings are depressed by depreciation, utilities carry structural debt, and software trades at structurally higher sales multiples. So some sectors get their own model — metrics that are meaningless for that business are excluded, and thresholds with different sector norms are re-banded.
Every report names the model it used underneath the score. All other sectors use the standard bands documented below.
Each row shows what score a real value produces, straight from the scoring function. Values between the shown points are interpolated linearly.
stockcue is a research and education tool — see the Disclaimer. AI features are constrained to the data shown in each report and cite the fields they use, but can still make interpretation errors.