Make categorical data comparable.

Canonmap maps inconsistent labels and short descriptions to stable concepts in a taxonomy you choose. It also shows where the taxonomy is ambiguous, redundant, or missing useful structure.

Built for vocabularies with thousands of possible concepts, where exact matching and one-prompt classification stop being dependable.

Taxonomy2022 NAICS industries
1,012 concepts
Source value

Custom software development services for business clients

Matched
541511Custom Computer Programming Services
Why this fits

The description refers to software built for individual clients.

Also considered
513210

Software PublishersNot selected because the description does not indicate a standard software product sold to many customers.

Illustrative decision from the NAICS example.Open in Normalize

A category is only useful if equivalent observations count together.

Databases group categorical values by their stored representation. Unless a mapping has been defined, custom app development, bespoke software consulting, and contract software engineering are three different values.

That fragments frequency counts, changes rankings, prevents reliable joins, and leaves downstream rules dependent on spelling. A canonical concept gives equivalent observations a shared identifier while preserving the original text.

Illustrative company-description field, 1,093 observations.
Most frequent raw valuesExact strings
custom app development184
bespoke application development171
commercial banking165
retail bank149
residential home construction93
contract software engineering88
consumer banking services82
home builder71
custom programming49
new home construction41
Most frequent conceptsStable IDs
541511
Custom Computer Programming Services
492
522110
Commercial Banking
396
236115
New Single-Family Housing Construction
205

The raw table describes wording. The canonical table describes the concepts the field was intended to measure.

The difficult cases are not spelling mistakes.

Large taxonomies contain close neighbors, uneven hierarchies, outdated names, and concepts that differ by one operational detail. Some inputs are incomplete or describe something the taxonomy does not contain.

Similarity can retrieve a useful neighborhood. Canonicalization must still determine whether any candidate represents the same concept.

InputCustom software development services for business clients
Custom Computer Programming ServicesSupported
2Software PublishersWrong business model
3Computer Systems Design ServicesRelated, but broader
4Computing Infrastructure ProvidersDifferent activity

From a taxonomy file to a maintained mapping API.

Upload the concepts your data is expected to use. Canonmap validates the taxonomy, makes an initial mapping build available, and continues improving difficult decisions behind the same versioned API.

01

Start with the vocabulary the organization already uses.

A label is sufficient to start. Existing IDs, definitions, aliases, parent concepts, and examples improve the source material when available. Canonmap retains source IDs or creates stable IDs when they are absent.

Source taxonomy -> validated concepts and stable identifiers
02

Begin testing without waiting for every optimization.

Canonmap makes an initial mapping build available after validation and indexing. The first build uses the same response contract as later versions, so evaluation can begin while managed improvement continues.

Validated taxonomy -> initial versioned mapping build
03

Return a concept only when the evidence supports one.

Every result is either a match or ambiguous. A match returns a stable concept from the selected taxonomy; an ambiguous result preserves the source value and plausible candidates without forcing a label.

Source value -> match or ambiguous
04

Improve the service without making the customer build models.

Canonmap evaluates difficult cases and publishes qualified changes as new immutable builds. Separate recommendations can identify overlapping labels, reporting groups, and useful subcategories without silently changing the source taxonomy.

Evaluation evidence -> qualified, reversible build

The same mapping problem appears in very different data.

A taxonomy defines the valid answers and the distinctions that matter. Change the taxonomy, and the meaning of the mapping changes with it.

01

2022 NAICS industries

1,012 six-digit industries

An establishment and its primary economic activity

Classifies establishments by their primary economic activity. Use it for local industry labels and descriptions of what a business location does.

"custom software development services for business clients"illustrative targetCustom Computer Programming Services
Try this taxonomy
02

Federal products and services

2,344 active codes

The predominant product or service in a contract action

Classifies the predominant product or service in a federal contract action. Use it for procurement descriptions, statement-of-work titles, and local spend categories.

"IT telecom application development support labor"illustrative targetIT and Telecom - Application Development Services
Try this taxonomy
03

OpenAlex research topics

4,516 research topics

The primary research topic of a scholarly work

Classifies what a scholarly work is about. Use it for titles, abstracts, grant descriptions, and local research-area labels.

"artificial intelligence for healthcare diagnosis"illustrative targetArtificial Intelligence in Healthcare
Try this taxonomy

A language model can judge a candidate. It should not search the entire taxonomy for every row.

Language models are useful when a distinction depends on context. They are less practical as the whole mapping system: repeatedly sending thousands of concepts is expensive and slow, smaller models struggle with large choice sets, and an unconstrained answer may not be a valid concept.

Canonmap prepares the taxonomy once, retrieves a small candidate set, constrains the decision to a specific version, and allows uncertain inputs to remain ambiguous.

Source value
Published build
Candidate retrieval
Constrained decision
Match / ambiguous
Versioned evaluation
The expensive preparation and improvement work is managed once; the resulting policy is served through a versioned API.

The browser is for understanding the decision. The API is for using it.

Product and data teams can inspect concepts, candidates, ambiguous results, and evaluation evidence. Engineers receive the same mapping contract through code.

Requestbash
curl "$CANONMAP_API_URL/v1/taxonomies/naics/normalize" \
  -H "Content-Type: application/json" \
  -d '{
    "value": "custom software development services for business clients"
  }'
Responsejson
{
  "taxonomy_id": "naics",
  "taxonomy_version": "2022",
  "source_value": "custom software development services for business clients",
  "decision": "match",
  "concept": {
    "id": "541511",
    "label": "Custom Computer Programming Services"
  },
  "mapping_build": "<immutable-build-id>"
}

Start with the vocabulary your organization already uses.

Inspect a public example, test it against real values, and decide whether the mapping contract belongs in a production data path.