> For the complete documentation index, see [llms.txt](https://docs.voting.works/vxsuite-tdp-v4/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.voting.works/vxsuite-tdp-v4/system-performance-and-specifications/reliably-detectable-marks.md).

# Reliably Detectable Marks

Marks are determined valid and counted by the system if the amount of darker pixels in the bubble area exceeds a configurable "definite" mark threshold set in the [Election Package](/vxsuite-tdp-v4/readme/election-package.md) system settings file. This mark threshold can be adjusted to have a stricter or looser interpretation of what is considered a valid mark. On both VxScan and VxCentralScan, the voting system does not process any marks as ambiguous. All marks are either valid or invalid.

The recommended and default threshold is 7%. With this threshold setting, hand marked paper ballot interpretation detects a valid mark per the mark conditions described by VVSG 1.1.6-H.

At this default threshold, marks such as a light dot, a fold through a bubble, a stray mark outside of the bubble, or a small line just on the corner of a bubble will be considered invalid. Marks such as a completely filled bubble, half filled bubble, or an X in a bubble will be considered valid.

Examples of invalid and valid marks along with the score for that mark (in green) are shown below.

The mark threshold set on a scanner can be checked by an election official at any point by viewing the readiness report for that device as described in [Diagnostics](/vxsuite-tdp-v4/readme/diagnostics.md) (see also [VxScan Diagnostics](https://docs.voting.works/vxsuite-user-manual-v4/vxscan/vxscan-diagnostics) & [VxCentralScan Diagnostics](https://docs.voting.works/vxsuite-user-manual-v4/vxcentralscan/vxcentralscan-diagnostics) in the user manual).

### Invalid Marks

<figure><img src="https://2844856024-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F1u8fW6N860E8KpEACPsc%2Fuploads%2Fgit-blob-daf5b5572c924cebedbb6295579e73b76e2e8c48%2Fimage%20(65).png?alt=media" alt=""><figcaption></figcaption></figure>

### Valid Marks

<figure><img src="https://2844856024-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F1u8fW6N860E8KpEACPsc%2Fuploads%2Fgit-blob-ea274f61222b3971f16cf2fe3eafb030d8f70bf1%2Fimage%20(1)%20(2).png?alt=media" alt=""><figcaption></figcaption></figure>

### Marginal Marks

The system also supports setting a marginal mark threshold for flagging ambiguous marks close to but not quite over the definite mark threshold. If a marginal mark threshold is set and marginal mark adjudication is enabled, the definite mark threshold can be increased without having to worry about completely missing marks.


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation by asking a question.

Perform an HTTP GET request on the following URL with the `ask` and `goal` query parameters:

```
GET https://docs.voting.works/vxsuite-tdp-v4/system-performance-and-specifications/reliably-detectable-marks.md?ask=<question>&goal=<user_goal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is what the user is ultimately trying to achieve, the reason they need the answer. Sharing it helps GitBook give you a better, more relevant answer. A goal is most helpful when it describes the outcome the user wants rather than restating the question. For example, with `ask=how do I create an API token`, a goal like `automate deployments from our CI pipeline` lets GitBook tailor the answer to that use case.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
