# Input indicators (/docs/indicator-apps/indicators/input)



**Input indicators** are the metrics you collect by hand: one value per
**period**, and one value per member if the indicator has
[dimensions](../dimensions/other-dimensions.mdx). They are the raw figures your
indicator app is built on. Values that are calculated for you instead come from a
[formula](./formula.mdx) indicator.

There are five input types, picked by the kind of value you collect:

* [**Numeric**](#numeric) - a number.
* [**Text**](#text) - a word or short note.
* [**Boolean**](#boolean) - a yes/no.
* [**Select**](#select) - one option from a list you define.
* [**File**](#file) - an uploaded document.

## Settings every input indicator shares [#settings-every-input-indicator-shares]

Whatever the type, a few settings shape how an indicator behaves:

* **Technical ID:** a short, stable name used to refer to the indicator, for
  example in a [formula](./formula.mdx). It stays the same even if you rename the
  indicator's display name.
* **Description:** a plain explanation of what the metric is, so collectors know
  what to enter.
* **Unit:** for a numeric indicator, the unit its values are measured in, picked
  from a fixed list (for example MWh, tCO2e, %, EUR). The unit is stored as a
  structured setting rather than being written into the name, and it is shown
  beside the value when collectors enter data. Leave it unset for a unitless
  figure.
* **Guidance:** optional longer help text, written in a formatting editor
  (headings, bold, lists, links). When a datapoint has guidance, collectors see it
  in a **Guidance** panel above the data grid, open by default and collapsible, so
  it is read at the point of entry. Use it for standards-grade explanations that are
  too long for the description.
* **Collection interval:** how often a value is collected, daily through yearly.
  See [Time dimension](../dimensions/time.mdx).
* **Required:** whether a value must be entered each period.
* **Conditional applicability:** an optional rule that decides, **per cell** (per
  dimension slice and period), whether the datapoint applies at all, based on other
  datapoints' values. The rule is a two-sided comparison with a left side, an
  operator (`= != < > <= >=`), and a right side, each side built from the same
  [building blocks](./formula.mdx#you-build-a-calculation-you-do-not-write-one) a
  formula indicator uses - for example a **Reference** to headcount on the left,
  operator `>=`, and a **Number** 50 on the right. Because it is evaluated per cell, a
  small country can be exempt while a large one is required in the same period (a
  per-country trigger is never netted into one total). A rule about a **yes/no** or a
  **select** datapoint gets a guided row instead of the blocks: Yes / No buttons for the
  first, and the option's own label for the second, so nobody has to know that a yes is
  a 1 or that an option is addressed by its position. When it is false for a cell, collectors see that cell
  marked "not applicable" with the reason, instead of being asked for a value; when a
  referenced value has not been entered yet, the cell is applicability-unknown, stays
  optional, and is never silently hidden. The rule belongs to the datapoint: a
  [group](../groups.mdx) organises datapoints and never gates them, so to exempt a whole
  section put the same rule on each of its datapoints. A datapoint that carries a rule
  shows a **Conditional** badge in the structure list. Readiness on the [Reporting periods](../collection-overview.mdx#reporting-periods)
  tab uses these rules to decide whether a reporting period is complete: a datapoint
  that does not apply is not counted as missing.
* **Value constraints and value rules:** two different things, and only one of them can
  stop a value being saved. **Value constraints** are structural: a numeric indicator can
  require whole numbers, and a select indicator can restrict entry to a subset of its
  options. A value that is not a value of that shape is refused at entry.
  **Value rules** (numeric datapoints only) are two-sided comparisons built from the same
  blocks, and each must name **this datapoint** on one side - the reference picker offers
  it as **This datapoint**, so "at most Office capacity" is two picks. One-click templates
  cover the common non-negative, minimum, maximum, 0-100 and year-on-year cases.
  &#x2A;*A value rule never stops you saving.** Your figure is stored, and the cell is marked
  with a warning icon whose tooltip names the rule it breaks; correct the figure and the
  mark goes away on the next read. That is deliberate: a rule can compare your value with
  one nobody has entered yet, or with the total across a breakdown you are halfway
  through, so a rule you cannot satisfy this minute must not cost you the number you
  have. The same marks are summarised on the
  [Reporting periods](../collection-overview.mdx#reporting-periods) tab. Consistency
  between related datapoints is handled separately by
  [consistency checks](../checks.mdx), and only a **blocking** check stops anything - it
  stops sign-off, never an entry.
* **Requires a comment:** whether the collector must add a note alongside the
  value, useful when figures need explaining.
* **Framework mapping:** an optional set of key/value entries that map the datapoint
  to an external reporting framework (for example a standard, disclosure, paragraph,
  or XBRL concept). Add, edit, and remove entries directly in the datapoint's
  configuration; the common keys are suggested as you type. The mapping is opaque
  reference metadata carried with the datapoint - it does not affect collection or
  validation.
* **Archived:** hides an indicator you no longer collect, without deleting its
  history.

## Numeric [#numeric]

A **numeric** indicator holds a number. It is the most common kind and the
foundation of most tracking: energy used, revenue earned, litres of fuel burned,
and so on.

Numeric values are real numbers, so they can be used in calculations. Together
with [formula](./formula.mdx) indicators, they are the only inputs a formula can
compute with. If you want a metric to feed into a calculation, collect it as a
numeric indicator.

## Text [#text]

A **text** indicator records a value in words: a short note, a status, or an
explanation. Use it when the thing you are tracking is best captured in words, for
example "on track" or "delayed", or a short note on what happened that period.

Because its value is words rather than a number, a text indicator cannot be used
directly in [formula](./formula.mdx) math. If you need something countable, model
it as a [boolean](#boolean), a [select](#select), or a [numeric](#numeric)
indicator instead.

## Boolean [#boolean]

A **boolean** indicator records a simple yes/no. Use it for things that are either
true or false: a target met, a checklist item done, an audit passed. Each period,
the collector marks yes or no.

A boolean can be used directly in a [formula](./formula.mdx): **yes becomes 1 and
no becomes 0**. That makes booleans surprisingly useful in calculations. Summing
one over a span of periods counts how many times the answer was yes; averaging it
gives the fraction of periods that were yes. A period with no value behaves like
any other missing input (a gap, not a "no") unless your formula supplies a
default.

## Select [#select]

A **select** indicator lets the collector choose one option from a list you
define, for example "Low", "Medium", "High". You set the options when you create
it, and the collector can only pick from that list.

A select keeps data consistent, so "High", "high", and "HIGH" do not become three
different answers, and it makes the data easy to group and filter. Prefer a select
over a [text](#text) indicator whenever the answer should come from a known set
rather than be typed freely.

## File [#file]

A **file** indicator stores an uploaded document as each period's value: a PDF, an
image, a spreadsheet, or any file you need on record alongside your metrics. Use
it for evidence behind a reported figure, a certificate that arrives each period,
or a form you must retain.

Each period, the collector uploads that period's file and can replace it if a
newer version arrives. The most recent upload is the one that stands.

## Which types a formula can use [#which-types-a-formula-can-use]

Only [**numeric**](#numeric) and [**boolean**](#boolean) inputs carry a value a
[formula](./formula.mdx) can compute with (a boolean as 1 or 0), alongside other
formula indicators. [Text](#text), [select](#select), and [file](#file) indicators
have no numeric value and cannot be referenced in a calculation.
