# QC insertion protocols — setting the rules

> How often a standard, blank or duplicate goes in — and how a project runs more than one set of rules.

Source: https://geodb.io/guide/topic/qc_protocols/ · Category: Understanding your data
[QC itself](https://geodb.io/guide/topic/qc_system/) is about *judging* numbers after the
lab reports them. A **protocol** is the other half: the rules for what goes
into the sample stream in the first place, and how often.

## What a protocol holds

- **Intervals** — insert a standard every N samples, a blank every N, a
  field duplicate every N. Each type can be enabled or left off.
- **Insertion mode** — *Independent* (each type counts on its own),
  *Staggered* (each type starts at an offset, so they don't all land on the
  same sample), or *Round robin* (one interval, rotating through the types).
- **Counter scope** — whether counters reset per drill hole / per sample
  programme, or run continuously across the project.
- **A default standard** — the CRM to reach for when a standard is due.

## A project can hold several

Real programmes aren't uniform: an RC campaign and a soils grid want
different QC rates. So a project holds **many protocols**, listed across the
top of the protocol page. Click one to edit it; the settings below always
belong to the protocol you have selected.

Exactly one protocol is the **project default** — the one used wherever a
drill cutsheet or sample programme doesn't name a different one explicitly.
Promoting another protocol to default demotes the current one automatically,
so you can never end up with two, or none.

**Programme type** (Drilling / Soils) is a *label*. It titles the protocol
and seeds sensible starting intervals when you create one, and it picks
honest wording for the counter-scope options — a soils grid has no drill
holes. It never decides which protocol applies. That decision is always
either "the plan named this one" or "fall back to the default".

## Where the rules are used

The intervals drive the QC reminders on drill cutsheets and sample
programmes, and the field app reads the project default. A cutsheet
remembers the protocol it was planned with, so re-opening an old one shows
the rules it was actually built under rather than whatever the default
happens to be today.
