Potato Documentation

Potato (POrTable Annotation TOol) is a fully free data annotation tool supporting a wide range of features throughout your entire annotation pipeline.


Guides

Role-based guides that walk you through Potato for your specific use case:

Getting Started

Annotation Schemas

Workflow & Quality

  • Annotation Navigation - Navigation tools and status indicators
  • Task Assignment - Assignment strategies and configuration
  • Heterogeneous Coverage - Single-annotator default with a multi-annotator overlap sample, adaptive boost, per-annotator quotas, and full IAA reporting
  • Diversity Ordering - Embedding-based clustering for diverse item presentation
  • Training Phase - Annotator training and qualification
  • Quality Control - Attention checks and gold standards
  • Adjudication - Multi-annotator disagreement resolution
  • MACE - Multi-Annotator Competence Estimation via variational inference
  • Iterative BWS - Adaptive Best-Worst Scaling for fine-grained ordinal rankings
  • Category Assignment - Category-based item assignment
  • Surveyflow - Pre/post annotation surveys
  • Annotation Filtering - Filter data based on prior annotations
  • Survey Instruments - 55 pre-built validated psychological instruments
  • Memos - Universal annotator notes (instance/span-anchored, private/shared)
  • Search - Universal FTS5 search; admin search + guarded annotator search-and-claim
  • Codebook - Universal mutable code set (nested, opt-in per scheme, on-the-fly add)
  • Cases - Group instances into units of analysis; QDA auto-detect; crosstab integration

Agent Evaluation

Solo Mode

AI & Intelligence

Authentication & User Management

Crowdsourcing

Administration

Data & Output

UI & Customization

Integrations

Tools & Utilities

Productivity Features

Release Notes

  • v2.4.4 - Span Annotation Fixes & UX Improvements
  • v2.4.3 - Coding Agent Annotation, Localization & Stability
  • v2.4.1 - Bug Fixes
  • v2.4.0 - Agent Evaluation, AI-Assisted Annotation & Enterprise Integration
  • v2.3.0 - Solo Mode, Agent Workflows & Security Hardening
  • v2.2.0 - Comprehensive Annotation & Export Platform
  • v2.1.0 - Adjudication & Multi-Modal Annotation
  • v2.0.0 - Backend Refactor

Contributing


Task Documentation
Set up a basic annotation task Quick Start
Choose an annotation type Schema Gallery
Display images/video with radio buttons Instance Display
Show/hide questions based on answers Conditional Logic
Annotate PDFs, Word docs, or code Format Support
Set up SSO/OAuth login SSO Authentication
Reset a user's password Password Management
Use a database for user storage Password Management
Configure for MTurk MTurk Integration
Configure for Prolific Crowdsourcing Guide
Monitor annotation progress Admin Dashboard
Add AI suggestions AI Support
Set up quality control Quality Control
Present items diversely Diversity Ordering
Debug configuration issues Debugging Guide
Create custom visual layouts Layout Customization
Rapidly filter/triage data Triage
Link entities to knowledge bases Entity Linking
Annotate coreference chains Coreference Annotation
Annotate conversation trees Conversation Tree Annotation
Navigate efficiently through items Annotation Navigation
Evaluate AI agent traces Agent Traces
Use Solo Mode for collaborative annotation Solo Mode
Export annotations to Parquet Export Formats
Export to COCO/YOLO/CoNLL Export Formats
Push annotations to HuggingFace Hub HuggingFace Export
Deploy on HuggingFace Spaces HuggingFace Spaces
Set up webhook notifications Webhooks
Use LLM chat assistant for annotators Chat Support
Evaluate coding agents Coding Agent Annotation
Review web agent traces Web Agent Annotation
Load data from S3/GDrive/Dropbox Remote Data Sources
Use pre-built survey instruments Survey Instruments
Set up multilingual interface Multilingual
Resolve annotator disagreements Adjudication
Browse the REST API API Reference

Example Projects

Ready-to-use example configurations are available in the examples/ directory:

# Run a simple radio button example
python potato/flask_server.py start examples/classification/single-choice/config.yaml -p 8000

# Run a sophisticated layout example (content moderation, dialogue QA, medical review)
python potato/flask_server.py start examples/custom-layouts/content-moderation/config.yaml -p 8000

See the examples directory for more examples, including:

  • classification/ - Classification annotation examples (radio, checkbox, likert, etc.)
  • span/ - Span annotation examples (NER, linking, coreference, etc.)
  • image/ - Image annotation examples
  • video/ - Video annotation examples
  • audio/ - Audio annotation examples
  • advanced/ - Advanced features (conditional logic, quality control, etc.)
  • agent-traces/ - Agent trace evaluation examples (RAG, GUI agents, comparisons)
  • custom-layouts/ - Sophisticated custom layout examples