Practical Tutorials

Top-Cut Analysis: When to Cap High Grades (and When Not To)

Top-cuts are one of the most consequential and least-defended decisions in gold resource estimation. Here are three methods, when to apply them, and when capping is the wrong answer.

By Ghozian Karami · · 10 min read
Top-Cut Analysis: When to Cap High Grades (and When Not To)

Top-cuts are the geological version of pleading the fifth. They’re the analyst’s quiet admission that the data has a problem, and rather than fix the problem, we’re going to truncate it and hope the auditor doesn’t ask too many questions.

That’s unfair, but only slightly. Done well, top-cuts are a defensible response to genuine outlier behavior in skewed grade distributions. Done badly, they hide bad domaining, sloppy QA, or anxiety about high grades that are actually real. The difference between the two is method, documentation, and an honest answer to the question “what’s the geology actually doing here?”

This post walks through when capping is appropriate, three methods to choose a cap value, when capping is the wrong answer, and how to document the decision so a Competent Person (or KCMI Competent Person Indonesia) can sign with confidence.

Why high grades distort estimates

Most non-ferrous metal grade distributions are right-skewed: lognormal, or sometimes log-something-worse. A handful of very high values sit far out on the tail and have a disproportionate effect on:

  • The arithmetic mean, which kriging is implicitly trying to reproduce
  • The variance, which inflates the variogram sill and makes range estimation noisy
  • The kriging neighborhood, where a single outlier composite within the search ellipsoid can drive the entire block estimate

Picture a 60-hole gold project. The mean composite grade is 1.8 g/t. One sample at 95 g/t sits in a 5m intercept that nobody can reproduce. That one sample, depending on the search and weighting, can drive a block of 10,000 tonnes to a kriged grade of 4 g/t when the surrounding composites average 1.2 g/t. That’s not a resource. That’s a fairy tale.

The point of a top-cut is to acknowledge that this single value is not representative of the spatial domain it sits in, and to limit its influence to something defensible.

Three methods that actually work

There are about a dozen published methods. Three are commonly used in practice and produce defensible results.

Method 1: Decile analysis

Sort the composites in descending grade. Group into deciles (top 10%, next 10%, etc.). Calculate the contribution to the total contained metal from each decile.

Look for a discontinuity. Most well-behaved deposits have a smooth decline: the top decile contributes maybe 30 to 40% of the metal, the next decile 15 to 20%, and so on. A discontinuity (the top decile contributing 60%, or the top 1% contributing 25%) means you have a small number of values driving the global estimate.

Decile Range (g/t Au) Sample count Contained metal (g) % of total
Top 1% >18.5 8 1,420 19%
2 to 10% 4.2 to 18.5 73 2,180 29%
11 to 25% 1.8 to 4.2 122 1,690 22%
26 to 50% 0.8 to 1.8 203 1,310 17%
Bottom 50% <0.8 405 980 13%

The top 1% contributing 19% of the metal is a yellow flag. The decision: cap somewhere that reduces the top 1% contribution to a defensible percentage (typically 10 to 15% of total metal max).

Method 2: Log-probability plot

Plot grade on a log axis against cumulative probability. A pure lognormal distribution comes out as a straight line. Real data deviates from the line at the high tail when outliers are present.

Look for the inflection: the point where the data peels off the straight line. The grade at the inflection is a defensible cap value, because beyond that point, the population behaves differently from the bulk of the distribution.

This is the classical method and it’s still the most defensible single method for normal-shaped lognormal distributions. It’s less helpful when the distribution is multi-modal (which usually means you have a domaining problem, not a top-cut problem).

Method 3: Mean plus n standard deviations

The crudest of the three, but useful as a sanity check. Calculate the mean and standard deviation of log-transformed grades. Cap at mean + 2σ or mean + 3σ.

Fast. Reproducible. Mostly used as a comparison against the other two methods rather than as the primary decision tool. If decile analysis says cap at 25 g/t and mean+3σ says 22 g/t, the agreement gives you confidence. If they disagree by 2x, you have a population issue worth investigating.

A worked example: epithermal gold deposit

Setup: a Sumatran low-sulfidation epithermal Au project. 80 holes, 2m composites, three structural domains (vein, alteration halo, host rock). Domain-coded composites in the vein domain only:

  • N = 412 composites
  • Mean = 4.8 g/t Au
  • P50 = 1.2 g/t Au
  • P95 = 12.5 g/t Au
  • P99 = 35.0 g/t Au
  • Max = 142 g/t Au

The mean is four times the median. The max is 30 times the mean. Classic skew.

Run all three methods:

Method Suggested cap (g/t) Notes
Decile analysis 25 Top 1% contributes 22%, drops to 14% at cap=25
Log-prob plot 28 Inflection point at log-prob 0.992
Mean + 3σ (log) 22 Conservative, but consistent direction

All three agree directionally. The range is 22 to 28 g/t. The decision: cap at 25 g/t.

The capping costs about 11% of the contained metal in this domain. That’s significant and gets disclosed prominently in the report.

# Pseudo-workflow showing the decision
domain_vein = composites[composites["domain"] == "VEIN"]

decile_table = decile_analysis(domain_vein["Au_gpt"])
log_prob_inflection = log_probability_plot_inflection(domain_vein["Au_gpt"])
mean_plus_3sigma = log_mean_plus_n_sigma(domain_vein["Au_gpt"], n=3)

cap_candidates = [decile_recommendation, log_prob_inflection, mean_plus_3sigma]
# Result: [25, 28, 22] -- agreement direction, range 22-28
# Decision: cap at 25 g/t for VEIN domain
# Metal removed: 11.2% of contained Au in domain

Document the decision: which composites were affected (sample IDs), what their original grades were, what they were capped to, and the percentage of metal removed in each domain. That table goes in the report. No exceptions.

When capping is the wrong answer

Three situations where reaching for a top-cut means you’re solving the wrong problem:

1. Real high-grade vein systems

A low-sulfidation epithermal system or a narrow orogenic gold vein can absolutely have 100+ g/t bonanza intercepts that are real. Mining will recover them. Capping them at 25 g/t because they look “too high” destroys real metal that the project owner is going to deliver from the mill.

The fix isn’t a softer cap. The fix is proper domaining. Separate the bonanza zone from the lower-grade halo. Estimate them separately. Apply different (or no) caps within each domain. Bonanza domains often need no cap at all because the population is internally consistent.

2. Insufficient drilling on the high-grade portion

If your high grades are real but you only have a handful of composites in the high-grade zone, you don’t have a top-cut problem. You have a sampling problem. Capping doesn’t fix sparse data. More drilling fixes sparse data.

In the meantime, the mature response is to estimate the high-grade zone with a more conservative classification (Inferred or partial Indicated) and disclose the sampling density limitation, rather than cap the values to make them “behave.”

3. The high values are concentrated geographically

If your top 10 composites are all clustered within 50m of each other in a single hole, that’s not an outlier. That’s a discovery. Don’t cap it. Domain it. Treat it as a separate population with its own variogram and its own search.

A top-cut is a statement about the population’s representativeness in space. If your high values are clustered in space, they’re representative of that space. Cap is the wrong tool. Domain is the right tool.

When capping is appropriate

To balance the previous section, here’s when capping is the right call:

  • The high grades are scattered across the deposit (not clustered)
  • They appear in domains where the bulk of grades are lower (alteration halo, footwall, etc.)
  • Decile analysis shows a discontinuity: a small percentage of samples driving a large percentage of metal
  • Multiple methods agree directionally on the cap value
  • The geological hypothesis is that these are local, non-reproducible enrichment events (nuggetty gold, sub-sample variance, individual high grain in coarse free gold)

In these cases, capping is reducing the influence of values that mining genuinely won’t reproduce at production scale. The estimate becomes more conservative and more accurate.

Domain-specific capping

Capping should almost always be domain-specific. A single global cap applied across all domains is rarely defensible.

Example workflow for a polymetallic deposit:

Domain Variable Cap method Cap value % metal removed
Vein high-grade Au None n/a 0%
Vein low-grade Au Decile + log-prob 8 g/t 6%
Alteration halo Au Decile + log-prob 3 g/t 9%
Host rock Au Mean + 3σ 0.5 g/t 12%
Vein high-grade Cu None n/a 0%
Vein low-grade Cu Decile 1.8% 4%
Alteration halo Cu Decile 0.6% 7%
Host rock Cu Mean + 3σ 0.15% 11%

The cap values per domain make geological sense: the vein high-grade has no cap because the high grades are real and reproducible. The host rock has the most aggressive cap relative to the domain mean, because high values in low-grade rock are most likely sampling artifacts.

Documenting for QP / CP sign-off

Whatever you decide, the documentation rules are non-negotiable. JORC and KCMI both require disclosure. A well-written top-cut section in a report contains:

  • Per-domain composite count and grade statistics (mean, P50, P95, P99, max)
  • Decile contribution table for the top 1%, 5%, 10%
  • Log-probability plot per domain
  • Method(s) used to determine cap value, with the suggested value from each
  • Final cap value and rationale (why this value, not the others)
  • Number and IDs of composites affected
  • Percentage of contained metal removed per domain
  • Statement of any domain that was NOT capped, with justification

If your top-cut decision lives in a single line of a spreadsheet that says “cap = 25”, the documentation isn’t done. The audit will find it and ask for the rest.

A warning: capping is not domaining

The most important lesson, repeated because it’s the most common failure: capping is a corrective action for outliers within a properly defined domain. It’s not a substitute for defining the domains correctly.

If you’re capping aggressively to make the data behave, the data is telling you that the domain definition is wrong. Different geological populations are mixed inside what you’ve called one domain. The fix is to split the domain, not crush the high values.

The order of operations is:

  1. Geological domaining (lithology, structure, alteration, weathering)
  2. Statistical domain validation (ANOVA, boxplots per domain)
  3. Top-cut analysis per validated domain
  4. Compositing per domain
  5. Variography per domain
  6. Estimation per domain

Skip step 1 or step 2 and the top-cut in step 3 becomes a band-aid for a deeper problem.

Where Orebit Geotools fits in

Phase 02 (Drilling EDA) runs all three top-cut methods automatically per domain and produces:

  • Decile contribution table (per domain, per element)
  • Log-probability plots with auto-detected inflection points
  • Mean+nσ calculations on log-transformed grades
  • Comparison summary showing all three methods side by side
  • Configurable cap value with live preview of “metal removed” before you commit
  • Audit log of every cap decision, with the affected sample IDs, exportable as a CSV attachment to the report

This is the workflow that produced the per-domain cap table earlier in this post on a real polymetallic dataset. The whole top-cut analysis from raw data to documented decision takes about 20 minutes per domain instead of half a day.

For the geological domaining that should happen first, see drillhole validation. For the regulatory disclosure requirements, see JORC vs KCMI.

See the toolkit → · Buy on Lynk.id → (Bundle IDR 99K, single modules IDR 49K, lifetime access)

Bottom line

Top-cuts are a real tool, applied carefully, documented thoroughly, and never as a substitute for proper domaining. Three methods, agreement across methods, per-domain decisions, full disclosure of metal removed.

If you can’t defend the cap value to a Competent Person in three sentences referencing the decile contribution, the log-probability plot, and the geology, you haven’t earned the right to apply it.

The top-cut decision is one of the smaller technical choices in resource estimation. It’s also one of the most scrutinized at audit. Spend the hour. Do it right.


Working through a top-cut decision on a project with unusual grade distribution? Email hello@orebit.id with the histogram and I’ll share the methods that worked on similar deposits.

Ship faster

Try the toolkit this article uses.

Orebit Geotools — single-file HTML, works offline, no install. From CSV to resource report in one afternoon.

Explore Geotools →
# From this article:
open geotools.orebit.id
load(your_drillhole.csv)
apply(workflow_above)

# Done. Ship the report.

Keep reading