---
title: "Data Annotation & Labeling Services"
canonical: https://wavect.io/services/data-annotation/
language: en
description: "Prepare labeled data for machine learning and evaluation. Wavect defines annotation rules, reviews disagreements and delivers versioned datasets."
image: "https://wavect.io/img/general/bak/open_graph_preview.jpg"
---

Data Annotation

# Create training labels that people can agree on.

More labels do not help if different reviewers mean different things by them. We structure annotation around the model's task, write usable labeling rules and review agreement before scaling the work. The dataset arrives with its definitions and quality record.

THE ENGAGEMENT

## Agree the meaning before increasing the volume.

1. **Define the labels** Task, classes, edge cases and permitted data use.
2. **Calibrate reviewers** A shared sample, disagreement review and a usable rubric.
3. **Deliver with evidence** Versioned exports, quality checks and documented exclusions.

DIRECT ANSWER

Data annotation creates reviewed labels for training and evaluating models. The engagement covers label definitions, a calibration sample, annotation workflow, quality checks and a versioned dataset with documented limitations.

Best for

- Teams preparing text, image, audio or video examples for a defined model task
- Owners whose existing labels are inconsistent or lack review evidence

Consider another approach

- A general warehouse or business reporting pipeline
- Unspecified data collection without a defined use or permission basis

## Make the label useful for the downstream task

We define what each label means, when it applies and which cases should remain uncertain. A text classifier may need whole-document categories; a vision model may need boxes, regions or image-level labels. Granularity must match the model and the decision it supports. [Machine Learning](/services/machine-learning/) or [Computer Vision](/services/computer-vision/) can establish that target first.

## Resolve disagreement while the sample is small

Reviewers label an agreed calibration sample using the same instructions. We inspect disagreement, improve definitions and record adjudication decisions before increasing volume. Rare and ambiguous cases receive explicit examples. Domain judgments remain with qualified subject owners; an annotation instruction cannot replace expertise that the task actually requires.

## Choose the tool and review pattern deliberately

The workflow can use model-assisted suggestions, human labeling or a combination. Suggestions are identified as such and reviewed under the agreed policy. Access, storage, redaction and export formats are settled before work starts. We confirm language and domain coverage for the actual dataset rather than assuming one reviewer profile suits every collection.

## Illustrative acceptance: overlapping support categories

An example dataset contains messages about a late delivery and a refund request in the same text. Reviewers initially choose different single labels. The team agrees a multi-label rule, updates the rubric and rechecks affected examples. The delivered dataset identifies the rule version and quality sample, so a future model evaluation uses the intended meaning.

## Preserve the history of the dataset

Deliverables include the label schema, instructions, dataset version, review outcomes and a list of excluded or unresolved cases. Training and evaluation partitions are separated according to the agreed sampling design. Corrections are versioned, and personal or licensed source material follows the accepted retention policy. LLM evaluation datasets can continue under [AI Evaluation & LLMOps](/services/ai-evaluation-llmops/).

## Questions before you start

### Do you provide automated or manual annotation?

We choose the combination after reviewing the task and samples. Automated suggestions can speed up work, but the acceptance policy specifies what must be reviewed and how quality is measured.

### Can you repair an existing labeled dataset?

Yes. A sample audit identifies unclear categories, contradictory labels and coverage gaps. We agree which records need correction and preserve the previous version for comparison.

### Who handles specialized subject matter?

The scope names the required domain reviewers and their availability before work is accepted. Your team may supply that expertise; we do not infer it from general annotation experience.

### Does a labeled dataset guarantee a good model?

No. Labels address one part of model quality. Representativeness, leakage, the model approach and evaluation design still need to be assessed for the intended task.

## Continue with the right scope

- [Define a predictive modeling task](/services/machine-learning/)
- [Build image and video models](/services/computer-vision/)
- [Create evaluations for LLM systems](/services/ai-evaluation-llmops/)

## Structured Data

```json
{
  "@context": "https://schema.org",
  "@graph": [
    {
      "@id": "https://wavect.io/#organization",
      "@type": [
        "Organization",
        "ProfessionalService",
        "LocalBusiness"
      ],
      "employee": [
        {
          "@id": "https://wavect.io/team/kevin-riedl/#person",
          "@type": "Person",
          "jobTitle": "Managing Director",
          "name": "Kevin Riedl",
          "url": "https://wavect.io/team/kevin-riedl/",
          "worksFor": {
            "@id": "https://wavect.io/#organization",
            "@type": [
              "Organization",
              "ProfessionalService",
              "LocalBusiness"
            ]
          }
        },
        {
          "@id": "https://wavect.io/team/christof-jori/#person",
          "@type": "Person",
          "jobTitle": "Managing Director",
          "name": "Christof Jori",
          "url": "https://wavect.io/team/christof-jori/",
          "worksFor": {
            "@id": "https://wavect.io/#organization",
            "@type": [
              "Organization",
              "ProfessionalService",
              "LocalBusiness"
            ]
          }
        }
      ],
      "founder": [
        {
          "@id": "https://wavect.io/team/kevin-riedl/#person",
          "@type": "Person",
          "jobTitle": "Managing Director",
          "name": "Kevin Riedl",
          "url": "https://wavect.io/team/kevin-riedl/",
          "worksFor": {
            "@id": "https://wavect.io/#organization",
            "@type": [
              "Organization",
              "ProfessionalService",
              "LocalBusiness"
            ]
          }
        },
        {
          "@id": "https://wavect.io/team/christof-jori/#person",
          "@type": "Person",
          "jobTitle": "Managing Director",
          "name": "Christof Jori",
          "url": "https://wavect.io/team/christof-jori/",
          "worksFor": {
            "@id": "https://wavect.io/#organization",
            "@type": [
              "Organization",
              "ProfessionalService",
              "LocalBusiness"
            ]
          }
        }
      ],
      "legalRepresentative": [
        {
          "@id": "https://wavect.io/team/kevin-riedl/#person",
          "@type": "Person",
          "jobTitle": "Managing Director",
          "name": "Kevin Riedl",
          "url": "https://wavect.io/team/kevin-riedl/",
          "worksFor": {
            "@id": "https://wavect.io/#organization",
            "@type": [
              "Organization",
              "ProfessionalService",
              "LocalBusiness"
            ]
          }
        },
        {
          "@id": "https://wavect.io/team/christof-jori/#person",
          "@type": "Person",
          "jobTitle": "Managing Director",
          "name": "Christof Jori",
          "url": "https://wavect.io/team/christof-jori/",
          "worksFor": {
            "@id": "https://wavect.io/#organization",
            "@type": [
              "Organization",
              "ProfessionalService",
              "LocalBusiness"
            ]
          }
        }
      ],
      "name": "Wavect GmbH",
      "subjectOf": {
        "@id": "https://wavect.io/verified-claims.json#dataset",
        "@type": "Dataset",
        "creator": {
          "@id": "https://wavect.io/#organization",
          "@type": [
            "Organization",
            "ProfessionalService",
            "LocalBusiness"
          ]
        },
        "description": "A machine-readable registry of quantitative and qualitative claims published by Wavect, with review dates, localized page appearances and public third-party citations where available.",
        "inLanguage": "en",
        "isAccessibleForFree": true,
        "license": "https://creativecommons.org/licenses/by/4.0/",
        "name": "Wavect verified publication claims",
        "url": "https://wavect.io/verified-claims.json"
      },
      "url": "https://wavect.io/"
    },
    {
      "@id": "https://wavect.io/team/kevin-riedl/#person",
      "@type": "Person",
      "jobTitle": "Managing Director",
      "name": "Kevin Riedl",
      "sameAs": [
        "https://www.wikidata.org/wiki/Q139796365",
        "https://www.linkedin.com/in/wsdt",
        "https://github.com/wsdt"
      ],
      "url": "https://wavect.io/team/kevin-riedl/",
      "worksFor": {
        "@id": "https://wavect.io/#organization",
        "@type": [
          "Organization",
          "ProfessionalService",
          "LocalBusiness"
        ]
      }
    },
    {
      "@id": "https://wavect.io/team/christof-jori/#person",
      "@type": "Person",
      "jobTitle": "Managing Director",
      "name": "Christof Jori",
      "sameAs": [
        "https://www.wikidata.org/wiki/Q139796367",
        "https://www.linkedin.com/in/jocr77/",
        "https://github.com/jo-chris"
      ],
      "url": "https://wavect.io/team/christof-jori/",
      "worksFor": {
        "@id": "https://wavect.io/#organization",
        "@type": [
          "Organization",
          "ProfessionalService",
          "LocalBusiness"
        ]
      }
    },
    {
      "@id": "https://wavect.io/#website",
      "@type": "WebSite",
      "inLanguage": [
        "en",
        "de",
        "es",
        "zh"
      ],
      "name": "Wavect",
      "potentialAction": {
        "@type": "SearchAction",
        "query-input": "required name=search_term_string",
        "target": {
          "@type": "EntryPoint",
          "urlTemplate": "https://wavect.io/search/?q={search_term_string}"
        }
      },
      "publisher": {
        "@id": "https://wavect.io/#organization",
        "@type": [
          "Organization",
          "ProfessionalService",
          "LocalBusiness"
        ]
      },
      "url": "https://wavect.io/"
    }
  ]
}
```

```json
{
  "@context": "https://schema.org",
  "@graph": [
    {
      "@id": "https://wavect.io/services/data-annotation/#service",
      "@type": "Service",
      "areaServed": [
        {
          "@type": "Country",
          "name": "Austria"
        },
        {
          "@type": "Place",
          "name": "Worldwide"
        }
      ],
      "category": "Artificial Intelligence",
      "dateModified": "2026-10-31",
      "description": "Prepare labeled data for machine learning and evaluation. Wavect defines annotation rules, reviews disagreements and delivers versioned datasets.",
      "name": "Data Annotation & Labeling Services",
      "provider": {
        "@id": "https://wavect.io/#organization",
        "@type": [
          "Organization",
          "ProfessionalService",
          "LocalBusiness"
        ]
      },
      "serviceType": "Data Annotation",
      "url": "https://wavect.io/services/data-annotation/"
    },
    {
      "@type": "BreadcrumbList",
      "itemListElement": [
        {
          "@type": "ListItem",
          "item": "https://wavect.io/",
          "name": "Home",
          "position": 1
        },
        {
          "@type": "ListItem",
          "item": "https://wavect.io/services/overview/",
          "name": "Services",
          "position": 2
        },
        {
          "@type": "ListItem",
          "item": "https://wavect.io/services/overview/#ai",
          "name": "Artificial Intelligence",
          "position": 3
        },
        {
          "@type": "ListItem",
          "item": "https://wavect.io/services/data-annotation/",
          "name": "Data Annotation",
          "position": 4
        }
      ]
    },
    {
      "@id": "https://wavect.io/services/data-annotation/#webpage",
      "@type": "WebPage",
      "dateModified": "2026-10-31",
      "description": "Prepare labeled data for machine learning and evaluation. Wavect defines annotation rules, reviews disagreements and delivers versioned datasets.",
      "inLanguage": "en",
      "isPartOf": {
        "@id": "https://wavect.io/#website",
        "@type": "WebSite"
      },
      "mainEntity": {
        "@id": "https://wavect.io/services/data-annotation/#service"
      },
      "name": "Data Annotation & Labeling Services",
      "url": "https://wavect.io/services/data-annotation/"
    }
  ]
}
```

```json
{
  "@context": "https://schema.org",
  "@type": "FAQPage",
  "mainEntity": [
    {
      "@type": "Question",
      "acceptedAnswer": {
        "@type": "Answer",
        "text": "We choose the combination after reviewing the task and samples. Automated suggestions can speed up work, but the acceptance policy specifies what must be reviewed and how quality is measured."
      },
      "name": "Do you provide automated or manual annotation?"
    },
    {
      "@type": "Question",
      "acceptedAnswer": {
        "@type": "Answer",
        "text": "Yes. A sample audit identifies unclear categories, contradictory labels and coverage gaps. We agree which records need correction and preserve the previous version for comparison."
      },
      "name": "Can you repair an existing labeled dataset?"
    },
    {
      "@type": "Question",
      "acceptedAnswer": {
        "@type": "Answer",
        "text": "The scope names the required domain reviewers and their availability before work is accepted. Your team may supply that expertise; we do not infer it from general annotation experience."
      },
      "name": "Who handles specialized subject matter?"
    },
    {
      "@type": "Question",
      "acceptedAnswer": {
        "@type": "Answer",
        "text": "No. Labels address one part of model quality. Representativeness, leakage, the model approach and evaluation design still need to be assessed for the intended task."
      },
      "name": "Does a labeled dataset guarantee a good model?"
    }
  ],
  "speakable": {
    "@type": "SpeakableSpecification",
    "cssSelector": [
      ".faq-question",
      ".faq-answer"
    ]
  }
}
```
