Abstract

Billiger.de Products is an entity matching benchmark requiring matchers to identify product offers that refer to the same real-world product. It contains 13,568 offers describing 2,168 distinct products, collected from the German price-comparison platform billiger.de. The benchmark provides both the original German offers and machine-translated English versions of all training, validation, and test sets, enabling controlled analyses of how language affects entity matching performance. Following the multidimensional design of the WDC Products benchmark, Billiger.de Products provides dataset variants that systematically vary the size of the training set, the proportion of difficult-to-match corner cases, and the proportion of products that are not observed during training. These variants support fine-grained evaluations of data efficiency, robustness to challenging examples, and generalization to previously unseen products. We validate the benchmark using six supervised entity matching methods and GPT-5.2 in a zero-shot setting.

Introduction

Entity matching is the task of determining whether two records refer to the same real-world entity, for example whether two product offers describe the same product. Widely used entity matching benchmarks, such as Abt-Buy, Amazon-Google, or WDC Products, are monolingual: each contains records in only one language, typically English. However, many real-world applications must process and integrate data in multiple languages. For example, a European shopper searching for the lowest price of a product may not care whether the corresponding offer is published by a German, French, or Italian online retailer. A price-comparison platform serving such users must therefore be able to match product offers both within and across languages. Despite the practical importance of this setting, benchmarks for systematically evaluating entity matching systems on multilingual and cross-lingual data remain scarce.

Billiger.de Products is a step in this direction. The benchmark uses product data from the German price comparison platform billiger.de and is, to the best of our knowledge, the largest entity matching benchmark for German-language product data. In addition to the German original, we provide a machine-translated English version of every record. Splits, labels, and identifiers are identical in both versions, so the benchmark can be used as a German benchmark, as an English benchmark, or as a pair of parallel benchmarks for measuring how the language affects matching performance. Since every German record can also be paired with the English translation of its counterpart, the benchmark is also a starting point for cross-lingual matching experiments.

The benchmark follows the multi-dimensional design of WDC Products and controls task difficulty along three dimensions: the size of the training set, the fraction of hard-to-match corner cases, and the fraction of entities unseen during training. The sections below describe the benchmark in detail and report baseline results for six supervised matchers and for GPT-5.2 in a zero-shot setting on both language versions, as well as a cross-language experiment that evaluates matchers trained on German pairs on mixed German-English record pairs.

The Benchmark

The benchmark uses product offers originating from the German price comparison portal billiger.de. The benchmark (version 1.1) consists of 13,568 product offers describing 2,168 distinct products. Every offer carries the attributes name, description, brand, and price. Name and price are available in every offer, while description has a value density of over 99 % and brand of over 94 % in all variants. Identifiers such as EAN or manufacturer part numbers are deleted from the offers so that matchers need to rely on the textual description of a product rather than identifier lookup.

Following the design of WDC Products, task difficulty is controlled along three dimensions, resulting in 9 training sets, 27 validation sets, and 9 test sets per language:

  • Training set size: the small, medium, and large training sets contain 2,461 to 2,475, 5,897 to 5,913, and 26,571 to 27,112 pairs, respectively. The smaller sets are subsets of the larger ones, and all three are built from the same 500 products.
  • Corner cases: groups of five highly similar but distinct products generate hard positives and hard negatives. Datasets contain 20 %, 50 %, or 80 % corner-case product groups.
  • Unseen entities: in the Seen, Half-Seen, and Unseen test sets, 0 %, 50 %, or 100 % of the to-be-matched products do not occur in the training data. The Half-Seen and Unseen test sets evaluate the ability of a matcher to generalize to new and thus unseen products.
  • Two languages: every record exists in the German original and in an English machine translation. Splits, labels, and identifiers are identical, so performance differences are attributable to the language of the records and the translation process.

Product Categories

The products belong to thirteen different product categories. The figure below shows the amount of product offers that belong to each category. Furniture, clothing, and electronics account for the largest shares.

Furniture & Living23.5%
Clothing & Accessories21.6%
Electronics & Computers18.7%
Tools & DIY9.7%
Toys & Baby5.9%
Sports & Leisure5.9%
Automotive & Motorcycle5.4%
Cosmetics & Drugstore4.0%
Health & Care2.2%
Food & Beverages1.2%
Office Supplies1.0%
Books, Films & Music0.5%
Pet Supplies0.3%

Record Pairs and Labels

The record pairs in the training, validation, and test sets are either labeled as matches or non-matches. The labels are derived from a grouping (clustering) of offers that refer to the same product which was provided to us by billiger.de. Positive pairs (matches) are directly taken from these groups, negative pairs (non-matches) are generated by combining offers from one group with similar offers from other groups, resulting in hard negatives, with one randomly chosen negative per group. The amount of hard negatives per product grows with the training set size.

The test sets contain 4,372 to 4,458 pairs each with a class imbalance of about 1:10 to 1:13 between matches and non-matches. All nine test sets went through a two-round manual verification process involving two human annotators, who checked the pairs using a strict definition of what constitutes a match: product variants that differ in size, color, configuration, capacity, or package quantity were labeled as non-matches. The audit corrected pairs in which similar but distinct product variants had been grouped together. To assess the resulting label quality, one author re-annotated a stratified random sample of 100 test pairs, 50 matches and 50 non-matches, blind to the released labels. The re-annotation agreed with all 50 match labels and with 49 of the 50 non-match labels, which corresponds to an estimated disagreement rate of 1.9 % when weighted by the class imbalance of the test pairs.

Training and Validation Sets

Corner cases Size Training Validation
Pos. Neg. Total Pos. Neg. Total
20 % Small 485 1,979 2,464 491 1,993 2,484
Medium 1,457 4,456 5,913 491 2,989 3,480
Large 13,100 14,012 27,112 491 3,984 4,475
50 % Small 482 1,979 2,461 479 1,986 2,465
Medium 1,464 4,441 5,905 479 2,977 3,456
Large 13,024 14,000 27,024 479 3,971 4,450
80 % Small 492 1,983 2,475 485 1,985 2,470
Medium 1,462 4,435 5,897 485 2,970 3,455
Large 12,747 13,824 26,571 485 3,967 4,452

Test Sets

Corner cases Unseen Pos. Neg. Total
20 % 0 % 407 4,038 4,445
50 % 347 4,082 4,429
100 % 360 4,089 4,449
50 % 0 % 363 4,049 4,412
50 % 326 4,092 4,418
100 % 369 4,089 4,458
80 % 0 % 336 4,036 4,372
50 % 339 4,088 4,427
100 % 348 4,099 4,447

Example Pairs

The following matching and non-matching pairs illustrate the variety of product categories and comparison difficulties contained in the benchmark.

A real corner case from the benchmark: two wardrobe offers that agree in brand, model name, color, and almost the entire description, yet refer to different product variants (168 cm vs. 85 cm width). Under the strict identity definition of the benchmark, this pair is a non-match. Matchers that rely on surface similarity are reliably fooled by such pairs.

Record A id 2070627808

brand RAUCH

name rauch Kleiderschrank »Rasa« beige 168 cm x 188 cm x 52 cm

desc Produktdetails Markeninformationen , rauch BLUE – MÖBEL. EINFACH GUT.: Hier findest du funktionale, gut durchdachte und nachhaltige Möbel „Made in Germany“. Die Marke rauch BLUE vereint dabei zuverlässige Qualität mit einem top Preis-Leistungs-Verhältnis., Farbe Farbe , struktureichefarben hell/weiß, Farbe Griffe , alufarben, Hinweise Qualitätssiegel , Das "Goldene M", Gütesiegel der DGM, Ausstattung & Funktionen Anzahl Einlegeböden , 2, Anzahl Kleiderstangen , 1, Anzahl Schubladen groß , 4, Anzahl Türen , 4 St., Art Griffe , Griffleiste, Art Türen , Spiegeltüren Drehtüren, Maßangaben Breite , 168 cm, Tiefe , 52 cm, Höhe , 188 cm, Breite Schubladeninnenmaß , 78 cm, Tiefe Schubladeninnenmaß , 34 cm, Höhe Schubladeninnenmaß , 6,5 cm, Hinweis Maßangaben , Alle Angaben sind ca.-Maße., Material Material Schubladenauszug , Kunststoff, Material Kleiderstangen , Metall, Material Griffe , Kunststoff, Material Beschläge , Metall, Allgemein Ausführung , mit Spiegel, Lieferung & Montage Lieferumfang , Aufbauanleitung, Hinweise Hinweis Zubehör , Einlegeböden Art. Nr. 862919 Schrankbeleuchtung Art. Nr. 61256024 Hakenleiste Art. Nr. 41396010 Hosenhalter Art. Nr. 74171859 Krawattenhalter Art. Nr. 28858131, Wissenswertes Wissenswertes , Innendekor in heller Leinenoptik. Nur liegend montierbar!,

price 409.99

Record B id 2056478070

brand RAUCH

name rauch Kleiderschrank »Rasa« beige 85 cm x 188 cm x 52 cm

desc Produktdetails Markeninformationen , rauch BLUE – MÖBEL. EINFACH GUT.: Hier findest du funktionale, gut durchdachte und nachhaltige Möbel „Made in Germany“. Die Marke rauch BLUE vereint dabei zuverlässige Qualität mit einem top Preis-Leistungs-Verhältnis., Farbe Farbe , struktureichefarben hell, Farbe Griffe , alufarben, Hinweise Qualitätssiegel , Das "Goldene M", Gütesiegel der DGM, Ausstattung & Funktionen Anzahl Einlegeböden , 1, Anzahl Kleiderstangen , 1, Anzahl Schubladen , 2 St., Anzahl Schubladen groß , 2, Anzahl Türen , 2 St., Art Griffe , Griffleiste, Art Türen , Spiegeltüren, Maßangaben Breite , 85 cm, Tiefe , 52 cm, Höhe , 188 cm, Breite Schubladeninnenmaß , 78 cm, Tiefe Schubladeninnenmaß , 34 cm, Höhe Schubladeninnenmaß , 6,5 cm, Hinweis Maßangaben , Alle Angaben sind ca.-Maße., Material Material Schubladenauszug , Kunststoff, Material Kleiderstangen , Metall, Material Griffe , Kunststoff, Material Beschläge , Metall, Allgemein Ausführung , mit Spiegel, Lieferung & Montage Lieferumfang , Aufbauanleitung, Hinweise Hinweis Zubehör , Einlegeböden Art. Nr. 862919 Schrankbeleuchtung Art. Nr. 61256024 Hakenleiste Art. Nr. 41396010 Hosenhalter Art. Nr. 74171859 Krawattenhalter Art. Nr. 28858131, Wissenswertes Wissenswertes , Innendekor in heller Leinenoptik. Nur liegend montierbar!,

price 230.99

 Non-match: different width and door variants of the same product line


Two offers for the same De'Longhi coffee machine use different spelling, word order, and levels of detail, but share the identifying model number ECAM 650.55 MS. This pair is a match.

Record A id 1497975779

brand De' Longhi

name Delonghi Ecam 650.55 Ms Primadonna Elite Kaffeevollautomat

desc "MENÜ Zum Shop Bewertungen Favorit Newsletter Close Bild vergrößern DeLonghi ECAM 650.55 MS PrimaDonna Elite Kaffeevollautomat Kaffee- und Milchspezialitäten per einfachem Knopfdruck, einschließlich gleichzeitiger Zubereitung von zwei Tassen Espresso Cremiger Milchschaum mit dem automatischen LatteCrema System und automatische Reinigung der Milchkaraffe Erstellen Sie neue Rezepte, passen Sie Aroma sowie Menge an und verwalten Sie Profile über das Display und die Coffee Link App Teile aus rostfreiem Stahl, Farbdisplay und Soft-Touch-Benutzeroberfläche Kaffee- und Milchspezialitäten auf Knopfdruck und gleichzeitige Zubereitung von zwei Tassen Espresso Patentiertes LatteCrema-System für perfekte Milchgetränke auf Knopfdruck Einstellbare Kaffee- und Wassermenge sowie Kaffeetemperatur 3,5"" TFT Soft-Touch-Farbdisplay mit Direktwahltasten, Klartext und Programmierfunktion Innovative ""Coffee Link"" App Hauptmerkmale Abmessungen (TxBxH): 48x26x37,5 Gewicht (Kg): 12,5 Spannung/Frequenz (V~Hz): 220/240~50/60 Lei"

price 1349.78

Record B id 61480810216

brand De'Longhi

name Superautomatische Kaffeemaschine DeLonghi ECAM65055MS 1450 W Grau 2 L

desc Farbe: GrauSteckbares Produkt: JaSteckertyp: EU-SteckerArt: Express-KaffeemaschineMaterial: EdelstahlKapazität: 2 LSpannung: 240 VLeistung: 1450 W

price 1484.86

 Match: identical ECAM 650.55 MS model


These two METABO power tools share a brand and technical vocabulary, but the model numbers and product types conflict: one is a mitre saw, the other a rotary hammer. The hard-negative pair is therefore a non-match.

Record A id 191526663714

brand METABO

name Metabo KGS 254 M Elektro-Kappsäge

desc Metabo 602540000 Metabo KGS 254 M - Zug-Gerährungssäge - 1450 W - 254 mm Die Preise auf der Website enthalten die deutsche Mehrwertsteuer. Die hier angezeigten Preise entsprechen bereits den Preisen, die Kunden aus Österreich bei einer Bestellung verrechnet werden!

price 323.25

Record B id 59701070745

brand METABO

name Metabo KHE 3250 Elektro-Bohr-/Meißelhammer inkl. Koffer

desc Metabo 600637000 Metabo Kombihammer KHE 3250 Kunststoffkoffer (Netzbetrieb) 100 Tage kostenloses Rückgaberecht.

price 356.23

 Non-match: different METABO models and tool types

Baseline Results

Six supervised matchers spanning four methodological generations (word co-occurrence, feature-based machine learning, fine-tuned transformers, contrastive and graph-based architectures) were evaluated across all 27 configurations of both language versions, plus GPT-5.2 in a strict zero-shot setting. The table shows F1 scores on the German benchmark for all three training sizes. GPT-5.2 uses no training data, and results are shown for both the Simple and the Rule-Guided prompt.

Corner cases Training size Test set WordCooc Magellan RoBERTa R-SupCon HierGAT Ditto GPT-5.2 Simple GPT-5.2 Rule-Guided
20 % Small Seen 52.89 54.30 74.54 60.93 61.67 76.23 86.27 80.29
Half-Seen 42.40 47.35 59.14 44.11 54.80 61.43 82.98 84.11
Unseen 31.66 45.84 51.54 38.67 47.91 54.75 82.00 84.88
Medium Seen 68.32 56.34 82.15 78.04 78.78 82.68 86.27 80.29
Half-Seen 53.57 51.64 64.33 52.85 66.21 65.12 82.98 84.11
Unseen 35.52 48.82 54.87 42.81 57.03 57.03 82.00 84.88
Large Seen 72.77 57.03 84.08 84.85 83.58 86.66 86.27 80.29
Half-Seen 53.19 48.21 66.23 57.91 67.52 70.05 82.98 84.11
Unseen 34.62 46.56 57.20 45.69 56.86 60.91 82.00 84.88
50 % Small Seen 44.16 40.79 58.29 56.41 35.59 52.90 82.82 84.41
Half-Seen 33.78 38.89 46.58 38.73 34.37 43.21 73.13 81.35
Unseen 27.01 38.36 42.77 32.33 32.42 40.75 75.06 78.54
Medium Seen 56.59 45.56 72.60 67.56 61.48 75.27 82.82 84.41
Half-Seen 43.89 43.49 54.65 44.54 51.73 59.79 73.13 81.35
Unseen 29.16 42.21 48.26 34.73 46.77 53.53 75.06 78.54
Large Seen 63.08 43.85 77.78 76.63 74.48 81.40 82.82 84.41
Half-Seen 47.73 40.00 57.74 48.67 59.14 61.85 73.13 81.35
Unseen 28.27 40.44 48.67 36.47 53.97 52.02 75.06 78.54
80 % Small Seen 35.87 33.41 47.91 52.65 34.11 49.71 74.37 79.23
Half-Seen 30.60 32.49 39.55 37.33 29.82 42.26 67.11 77.99
Unseen 23.80 32.43 37.31 29.38 33.11 39.83 66.25 80.90
Medium Seen 45.27 35.99 64.39 63.09 58.46 67.52 74.37 79.23
Half-Seen 36.02 34.24 49.30 42.07 48.55 54.15 67.11 77.99
Unseen 24.74 34.29 43.73 31.75 49.53 48.08 66.25 80.90
Large Seen 52.90 35.60 72.23 70.39 66.65 74.52 74.37 79.23
Half-Seen 36.25 33.76 54.47 47.24 51.69 57.24 67.11 77.99
Unseen 21.15 33.11 45.28 33.36 47.35 49.44 66.25 80.90
GPT-5.2 prompts

The German benchmark used the German-language versions shown below the English prompts, with the same instructions and record attributes.

Simple prompt

Do these two product descriptions refer to the same real-world product?
Answer with Yes or No only.
Product 1: Brand: <brand> Name: <name> Description: <description> Price: <price> Euro
Product 2: Brand: <brand> Name: <name> Description: <description> Price: <price> Euro

Rule-Guided prompt

You are an expert product matcher. Your task is to decide whether two product records refer to the EXACT same product (same GTIN/SKU). Analyze the provided records carefully and return your decision as strict Yes or No.

CRITICAL: Product variants are NOT matches. Different sizes, colors, configurations, or package quantities are DIFFERENT products with different GTINs.

Guidelines:
Yes ONLY if both records refer to the exact same product that would have the same GTIN or barcode.
No if they are variants of the same product line such as different size, color, capacity, or configuration.
No if core identifying attributes conflict, including model numbers, dimensions, capacity, color, or configuration.
Missing attributes alone are NOT a conflict.
A match requires positive evidence of equivalence.
Respond ONLY with Yes or No.
Product 1: Brand: <brand> Name: <name> Description: <description> Price: <price> Euro
Product 2: Brand: <brand> Name: <name> Description: <description> Price: <price> Euro

Simple prompt (German version)

Beziehen sich diese beiden Produktbeschreibungen auf dasselbe reale Produkt?
Antworte nur mit Ja oder Nein.
Produkt 1: Marke: <brand> Name: <name> Beschreibung: <description> Preis: <price> Euro
Produkt 2: Marke: <brand> Name: <name> Beschreibung: <description> Preis: <price> Euro

Rule-Guided prompt (German version)

Du bist ein Experte für Produktabgleich. Deine Aufgabe ist zu entscheiden, ob sich zwei Produktdatensätze auf das EXAKT gleiche Produkt beziehen (gleiche GTIN/SKU).
Analysiere die bereitgestellten Datensätze sorgfältig und gib deine Entscheidung strikt als Ja oder Nein zurück.

KRITISCH: Produktvarianten sind KEINE Übereinstimmungen. Unterschiedliche Größen, Farben, Konfigurationen oder Verpackungsmengen sind UNTERSCHIEDLICHE Produkte mit unterschiedlichen GTINs.

Richtlinien:
- Ja NUR, wenn sich die Datensätze auf exakt dasselbe Produkt beziehen, das dieselbe GTIN/denselben Barcode hätte
- Nein, wenn es sich um Varianten derselben Produktlinie handelt (unterschiedliche Größe, Farbe, Kapazität usw.)
- Nein bei widersprüchlichen zentralen Identifikationsmerkmalen (Modellnummern, Abmessungen, Kapazität, Farbe und Konfiguration)
- Fehlende Attribute allein sind KEIN Widerspruch.
- Eine Übereinstimmung erfordert positive Evidenz der Gleichheit
- Antworte AUSSCHLIESSLICH mit Ja oder Nein.

Produkt 1: Marke: <brand> Name: <name> Beschreibung: <description> Preis: <price> Euro
Produkt 2: Marke: <brand> Name: <name> Beschreibung: <description> Preis: <price> Euro

The baseline results underline the difficulty of the benchmark. The traditional feature-based approaches WordCooc and Magellan average only 41.67 and 42.04 F1 across the 27 German variants, which is too low for practical use on this benchmark. Neural matchers such as Ditto reach up to 86.66 F1 in favorable configurations, but, as reported for WDC Products, they remain strongly affected by unseen entities. Averaged across all corner-case ratios and training sizes, Ditto loses 21.17 F1 from Seen to Unseen test sets. Even zero-shot GPT-5.2 does not solve the benchmark: with the stronger Rule-Guided prompt, its scores remain between 77.99 and 84.88 F1. The benchmark therefore remains challenging for traditional matchers, supervised neural models, and the evaluated LLM.

The three difficulty dimensions separate the benchmark variants as intended. F1 generally increases with the training set size, decreases as the corner-case ratio grows from 20 % to 80 %, and decreases from the Seen to the Unseen test sets. Individual medium-to-large results can deviate from the overall training-size trend. Comparing the Large, 20 % corner-case, Seen row with the Small, 80 % corner-case, Unseen row, the losses range from 24.60 F1 for Magellan (57.03 to 32.43) to 55.47 F1 for R-SupCon (84.85 to 29.38). In the Large, 20 % corner-case rows, the Seen-to-Unseen drops for R-SupCon, Ditto, and RoBERTa are 39.16, 25.75, and 26.88 F1, compared with 26.59, 9.60, and 9.16 F1 reported for WDC Products. The broader range of product categories may contribute to the larger drops, but this comparison does not establish their cause.

Ditto and HierGAT are the strongest supervised systems and reach 86.66 and 83.58 F1 on the easiest German variant. Zero-shot GPT-5.2 behaves differently. Under the Rule-Guided prompt its F1 varies by 6.89 points across all difficulty settings (20.02 under the Simple prompt), against 24.60 to 55.47 points for the supervised models. With the Rule-Guided prompt, GPT-5.2 reaches the highest F1 in 24 of 27 German variants and leads on every Unseen test set, where supervised models lose the training signal they depend on. The Simple prompt leads on the Small and Medium Seen variants at 20 % corner cases. Supervised matchers overtake GPT-5.2 only on the easiest variant (Large, 20 % corner cases, Seen), where Ditto is ahead by 0.39 F1. Averaged over the nine German test sets, GPT-5.2 reaches 76.66 F1 with the Simple and 81.30 F1 with the Rule-Guided prompt. A caveat applies to interpreting the GPT-5.2 results on the Seen/Unseen dimension. GPT-5.2 was trained on a large, undisclosed corpus, and all products in the benchmark were publicly available online. Some or all individual product records may therefore have appeared in its pre-training data. Here, Seen and Unseen only indicate whether the products occur in the benchmark's supervised training sets, not whether GPT-5.2 encountered them during pre-training.

Performance by Product Category

The difficulty of matching decisions depends on the product category. The table reports the same-category F1 per category, averaged over all nine German test sets, together with the number of records per category in the training and test pairs of the recommended configuration. The category ranking is stable across the model families. Among the nine largest categories, Clothing & Accessories and Furniture & Living are the two hardest for every model, and Clothing is the single hardest category for five of the eight model columns. Electronics & Computers ranks among the three easiest categories for every model and Health & Care for seven of the eight model columns, while Tools & DIY and Toys & Baby are in the upper half for every model. Distinctive model numbers and standardized technical specifications give both lexical and neural matchers strong signals in the easier categories, while variant-heavy, near-duplicate descriptions weaken matching for clothing and furniture.

Matching difficulty does not track the amount of training data: Health & Care, with 1,057 training records against more than 9,000 in each of the three largest categories, scores above Clothing and Furniture for every model and above Electronics for six of the eight model columns. Since electronics rank among the easiest categories, evaluations on electronics-centric benchmarks are likely to overestimate matching performance on broader product assortments.

Category Train Test WordCooc Magellan RoBERTa R-SupCon HierGAT Ditto GPT-5.2 Simple GPT-5.2 Rule-Guided
Furniture & Living 11,946 2,760 36.88 38.27 49.46 44.85 48.35 50.66 71.25 77.08
Electronics & Computers 11,737 885 49.55 58.19 77.82 67.34 77.40 80.95 90.81 90.76
Clothing & Accessories 9,100 2,514 38.20 33.35 49.48 43.35 46.96 52.06 64.76 70.94
Tools & DIY 6,206 643 50.90 55.81 70.39 62.83 71.46 72.27 90.25 88.05
Toys & Baby 3,754 367 48.80 51.74 76.70 70.24 72.80 75.88 92.53 88.52
Sports & Leisure 3,711 737 42.31 45.50 59.74 52.94 57.80 63.81 81.83 89.59
Automotive & Motorcycle 3,044 293 43.54 50.60 64.75 50.06 62.10 65.38 86.48 91.74
Cosmetics & Drugstore 1,178 282 39.01 49.14 61.22 50.49 59.43 64.69 77.82 77.21
Health & Care 1,057 222 56.42 67.91 79.70 68.31 81.04 80.26 95.50 82.72
Food & Beverages† 648 72 55.66 44.28 69.95 69.78 67.95 70.36 65.37 60.61
Office Supplies† 491 58 41.19 56.94 79.48 71.57 78.62 81.64 88.89 75.56
Books, Films & Music† 233 21 62.00 70.96 87.56 90.96 77.38 85.01 96.00 60.00

The category ranking is largely language-independent. Repeating the analysis on the English benchmark version for WordCooc, Magellan, RoBERTa, R-SupCon, and GPT-5.2 yields the same picture: the ranking of the categories stays largely unchanged, and the per-category shifts are of the same order as each matcher's overall language difference reported in the next section. The table below reports the same-category F1 on the English version.

Category WordCooc Magellan RoBERTa R-SupCon GPT-5.2 Simple GPT-5.2 Rule-Guided
Furniture & Living 37.67 36.45 53.57 45.18 71.39 78.38
Electronics & Computers 52.84 57.39 79.95 67.10 91.80 88.64
Clothing & Accessories 40.44 32.12 55.08 44.26 67.28 74.10
Tools & DIY 52.97 53.80 72.10 61.29 89.34 89.15
Toys & Baby 46.04 50.59 76.05 65.27 90.35 84.47
Sports & Leisure 54.77 42.09 67.05 56.75 80.79 85.63
Automotive & Motorcycle 44.80 50.59 65.09 51.91 85.52 91.72
Cosmetics & Drugstore 45.12 47.88 65.61 52.23 74.23 76.02
Health & Care 58.59 66.21 81.64 69.71 91.16 89.02
Food & Beverages† 52.35 42.11 70.05 67.57 70.13 63.81
Office Supplies† 43.23 35.81 82.95 72.26 82.96 79.63
Books, Films & Music† 68.22 55.34 93.19 93.04 96.00 80.00

English Translation

In addition to the German version of the benchmark, we also provide an English version of the benchmark. The English version was created by translating the German product offers to English using the GPT-5-mini model. The English version offers exactly the same variants and the same splits as the German version. The table below compares the F1 results of the eight matchers on the English version to the results on the original German version. The table reports the difference of the F1 score on the English version minus the F1 score on the German version for all 27 benchmark variants.

Corner cases Training size Test set WordCooc Magellan RoBERTa R-SupCon HierGAT Ditto GPT-5.2 Simple GPT-5.2 Rule-Guided
20 % Small Seen +4.23 −2.55 +2.56 +2.44 +12.41 −5.71 +0.20 −2.21
Half-Seen +2.19 −1.58 +2.05 −0.08 +9.70 −3.40 −1.43 −0.48
Unseen +5.72 −1.73 +4.43 −0.11 +11.10 −2.31 −0.84 +0.15
Medium Seen −2.05 −2.43 +1.38 −0.12 −1.54 +3.35 +0.20 −2.21
Half-Seen −1.47 −3.34 +0.91 −0.92 −1.23 +4.53 −1.43 −0.48
Unseen +5.60 −2.26 +1.55 −0.31 +0.03 +4.15 −0.84 +0.15
Large Seen +0.60 −0.36 +2.22 +0.20 +1.89 +1.49 +0.20 −2.21
Half-Seen +1.48 +1.19 −0.89 −0.68 +1.91 +0.73 −1.43 −0.48
Unseen +6.64 +0.58 −1.44 +0.09 +3.92 +1.73 −0.84 +0.15
50 % Small Seen +2.36 −1.42 +7.15 +4.60 +14.02 +9.64 +0.54 −1.98
Half-Seen +2.92 −1.14 +7.27 +2.35 +11.38 +7.94 −0.07 +1.43
Unseen +3.59 −2.61 +6.79 +1.10 +10.40 +6.08 −1.10 +3.40
Medium Seen −1.36 −0.90 +4.98 +3.36 +11.15 −10.25 +0.54 −1.98
Half-Seen +2.11 −0.10 +4.42 −1.24 +11.32 −3.92 −0.07 +1.43
Unseen +4.48 −1.85 +5.54 +0.23 +12.07 −2.86 −1.10 +3.40
Large Seen +0.34 −1.32 +2.43 +2.40 +3.61 +0.91 +0.54 −1.98
Half-Seen +1.42 −1.09 +1.86 +1.29 +5.21 +2.54 −0.07 +1.43
Unseen +6.45 −2.65 +2.48 +0.51 +4.45 +3.39 −1.10 +3.40
80 % Small Seen +4.42 −1.26 +8.59 +1.49 +15.03 +10.87 −0.26 +0.36
Half-Seen +4.42 −0.88 +5.82 +2.19 +13.64 +9.56 +1.99 +2.55
Unseen +0.57 −0.99 +4.77 +1.70 +10.64 +8.84 +1.27 +0.53
Medium Seen +4.44 −2.69 +5.19 +1.04 +6.28 −10.76 −0.26 +0.36
Half-Seen +3.98 −2.27 +8.35 +0.69 +5.77 −4.50 +1.99 +2.55
Unseen +1.46 −2.45 +5.59 −0.05 +2.34 −3.18 +1.27 +0.53
Large Seen −1.67 −2.58 +1.42 −0.89 +3.97 −0.07 −0.26 +0.36
Half-Seen +1.28 −1.32 +5.36 −3.33 +7.81 +4.38 +1.99 +2.55
Unseen +2.19 +0.31 +7.05 −1.31 +7.31 +4.92 +1.27 +0.53
Mean (all 27 variants) +2.46 −1.47 +3.99 +0.62 +7.21 +1.41 +0.03 +0.42
Median (all 27 variants) +2.19 −1.42 +4.43 +0.23 +7.31 +1.73 −0.07 +0.36
Variants with English ahead 23 3 25 16 25 17 12 18

The main result is that changing the language rarely changes the practical assessment of a matcher. WordCooc and Magellan remain below 46 mean F1 in both languages, which is too low for practical matching on this benchmark. Averaged across all variants, every transformer-based matcher scores higher on the English version, and GPT-5.2 is nearly indifferent to the language: its mean differences are +0.03 F1 with the Simple prompt and +0.42 F1 with the Rule-Guided prompt, and no individual difference exceeds 3.40 F1. This largest GPT-5.2 difference stems from single runs per variant, and the cross-language section below reports a run-to-run spread of 1.10 F1 for repeated DE-DE requests, so a small language effect under the Rule-Guided prompt remains plausible.

WordCooc shows a slight advantage on English that is most visible on the Unseen test sets, reaching 6.64 F1 (Large, 20 % corner cases), possibly because German compounds reduce exact token overlap between matching records. Magellan instead slightly favours German (mean −1.47 F1). RoBERTa favours English with a mean difference of +3.99 F1 and English ahead in 25 of 27 variants, consistent with its predominantly English pre-training. The advantage is largest with Small training sets (+5.49 F1) and shrinks to +2.27 F1 with Large sets, so fine-tuning an English model on German data costs only little matching performance once enough training data is available. HierGAT shows the largest mean difference (+7.21 F1, English ahead in 25 of 27 variants), while Ditto (+1.41 F1) and R-SupCon (+0.62 F1) are close to parity, although all three fine-tune the same RoBERTa backbone.

Across the six supervised matchers, the mean absolute language gap decreases from 5.24 F1 with Small training sets to 3.52 with Medium and 2.40 with Large sets. Language sensitivity therefore tends to be larger when little training data is available.

The multilingual encoder XLM-R, evaluated on the 80 % corner-case variants, scores above RoBERTa on German in all nine cells, by 1.9 to 9.6 F1, with the largest gains on the Small training sets, and stays within 3.8 F1 of RoBERTa on English, with RoBERTa ahead on the Large sets. The average language difference is small with the multilingual backbone: over the nine cells, XLM-R scores 0.69 F1 higher on English than on German, RoBERTa 5.79 F1. This indicates that the English advantage of RoBERTa stems mainly from its backbone rather than from differences between the German and the translated English data. For matching in a non-English market, a multilingual encoder is the better starting point: it gains 1.9 to 9.6 F1 on German at a cost of at most 3.2 F1 on the Large English sets.

Training sizeTest setRoBERTa (DE)XLM-R (DE)RoBERTa (EN)XLM-R (EN)
SmallSeen47.9157.5456.5057.51
Half-Seen39.5548.0745.3749.13
Unseen37.3143.3142.0745.23
MediumSeen64.3968.6669.5971.77
Half-Seen49.3055.6557.6557.96
Unseen43.7350.2649.3252.80
LargeSeen72.2374.0973.6572.75
Half-Seen54.4758.0159.8356.90
Unseen45.2851.3652.3349.09

Comparing the results of the matchers on the English version of the billiger.de benchmark to the results of the same matchers on the WDC Products Benchmark, which also features English product data, shows that the F1 results on billiger.de are generally lower: averaged over the 27 shared configurations, RoBERTa, Ditto, HierGAT, and R-SupCon score 9.8 to 19.6 F1 lower on the English version of Billiger.de Products than on WDC Products, while the ranking of the six matchers is the same on both benchmarks. Billiger.de Products (English) is therefore more difficult than WDC Products. Even on the easiest English configuration (20 % corner cases, Large, Seen), RoBERTa, Ditto, and R-SupCon score 1.2 to 8.7 F1 below their published Abt-Buy results. A reason for this might be that Billiger.de Products spans a broader range of product categories, whereas WDC Products is dominated by offers for electronic products.

Cross-Language Matching

The comparison above changes the language of both records at once. In applications such as European price comparison, matchers also have to compare records across languages. This section evaluates this setting directly: all supervised matchers are trained on the German 80 % corner-case large training set (26,571 pairs) and selected on the corresponding German Seen validation set (4,452 pairs). The multilingual encoder XLM-R is trained and selected in the same way. Each matcher is then evaluated, without further training, on five variants of the 80 % corner-case Half-Seen test set (4,427 pairs each) in which only the language of the records changes. In DE-DE both records are German, in DE-EN and EN-DE one record is German and the other English, in EN-EN both records are English, and Mixed combines the four combinations in equal shares (1,106 or 1,107 pairs each). Pair IDs, labels, and the seen/unseen composition are identical in all five variants. GPT-5.2 receives the German prompt in all five variants, and its zero-shot requests were repeated three times per prompt and variant. The supervised matchers report the mean over three seeds from training runs that are separate from the main evaluation but use the same training and validation splits, so the DE-DE scores can differ from the corresponding cells of the main table. For WordCooc and XLM-R, whose training is deterministic, the scores coincide. Language effects are measured relative to each model's own DE-DE baseline.

Model DE-DE DE-EN EN-DE EN-EN Mixed
WordCooc 36.2 −6.0 −6.6 −10.5 −7.0
Magellan 33.8 −2.2 −3.0 −0.5 −1.2
RoBERTa 53.3 −7.2 −7.7 −5.3 −5.2
XLM-R 58.0 −4.8 −5.6 +0.3 −1.4
R-SupCon 43.1 −0.8 −1.8 −5.8 −2.2
HierGAT 51.4 −7.4 −6.9 −0.7 −4.0
Ditto 55.3 −6.4 −6.2 −2.4 −3.4
GPT-5.2 Simple 68.4 +1.4 −0.4 +0.5 +1.3
GPT-5.2 Rule-Guided 79.6 −0.7 −0.7 −0.8 −0.8

WordCooc and Magellan both lose performance once records leave the training language, but to a different degree. WordCooc loses most on the fully English variant (10.5 F1), since its co-occurrence features fire only when a token appears in both records and newly shared English tokens may lie outside the feature space fitted on German pairs. Magellan stays within 3.0 F1 points of its DE-DE score across all variants, as its similarity features depend less on the language. Both matchers operate between 25.7 and 36.2 F1 on this test set, so these differences carry limited practical weight. R-SupCon is the exception among the transformer-based matchers: it stays within 1.8 F1 of DE-DE on the two cross-language variants and loses most on the fully English variant (5.8 points). Its cross-language F1 remains below XLM-R and Ditto, so the smaller loss does not imply stronger absolute performance.

The four transformer-based matchers RoBERTa, XLM-R, HierGAT, and Ditto lose 4.8 to 7.7 F1 on the two cross-language variants DE-EN and EN-DE, and each of them loses less when both records switch to English, where the differences range from a gain of 0.3 to a loss of 5.3 F1. The Mixed variant, in which half of the pairs are same-language, loses less than the two cross-language variants. The models therefore do not fail on English data as such. As long as both records switch language together, the cues learned on German pairs, such as overlapping tokens between the two names and descriptions, stay intact. In a cross-language pair, the translation removes this surface overlap on one side only, and pairs that cross the language boundary never occur in the German training data. XLM-R loses 4.8 and 5.6 F1 on DE-EN and EN-DE but gains 0.3 F1 on EN-EN, so multilingual pre-training alone does not prevent the cross-language loss in this setting. For a price comparison portal this distinction matters, because the cross-border case is exactly the cross-language case.

GPT-5.2 delivers the best scores in every variant and reaches 79.6 F1 with the Rule-Guided prompt and 68.4 F1 with the Simple prompt on DE-DE. Its scores differ from DE-DE by at most 1.4 F1 in any variant. With both prompts, the spread across the five variants (0.77 F1 Rule-Guided, 1.85 F1 Simple) is smaller than the spread across three repetitions of identical DE-DE requests (1.10 and 1.98 F1). These comparisons describe the observed spread rather than establish statistical significance. Neither prompt shows a practically large penalty for cross-language pairs. For applications that have to match offers across languages, and where the budget allows it, a zero-shot LLM is therefore the most reliable choice among the evaluated systems.

How to Use the Benchmark

The benchmark is distributed as gzipped JSON files with one record pair per line. Each line contains both product records, the binary match label, and a hard-negative indicator. The file name encodes the configuration: products80cc20rnd000un_train_large.json.gz denotes 80 % corner cases, 20 % random pairs, and the large training split. Training files always use 000un. The unseen-product share is defined by validation and test products relative to the training data. The files can be read directly with pandas:

import pandas as pd

pairs = pd.read_json(
    "products80cc20rnd000un_train_large.json.gz",
    compression="gzip",
    lines=True,
)

The complete reproduction code is available in the GitHub repository. From the repository root, install the fixed dependencies and generate all model-specific inputs with:

python3.10 -m venv .venv
source .venv/bin/activate
python -m pip install -r environments/requirements.txt

python src/processing/prepare_pairs.py
python src/processing/prepare_pretraining.py
python src/processing/prepare_ditto_hiergat.py
python src/processing/prepare_wordcooc.py
python src/processing/prepare_magellan.py

The launchers in slurm_runs/ and the model directories run the complete German and English experiment matrix with three fixed seeds. All generated metrics are written below results/generated/ and can be collected into one CSV with:

python src/summarize_results.py

Exact commands for WordCooc, Magellan, RoBERTa, R-SupCon, Ditto, HierGAT, and GPT-5.2 are documented in REPRODUCTION.md. The GPT-5.2 runs require an OPENAI_API_KEY and use the Batch API.

Recommended default: If you only want to report results for a single variant of billiger.de Products, we recommend 80cc20rnd050un: 80 % corner cases and the Half-Seen test set. Evaluate on products80cc20rnd050un_gs.json.gz. For supervised matchers, train on the products80cc20rnd000un_train_<size>.json.gz file of the chosen size and select models on the Seen validation set products80cc20rnd000un_valid_<size>.json.gz, as done for all reference results on this page. Please always state the language, the training-set size, and the benchmark version (currently 1.1).

Report the result as: Billiger.de Products v1.1 (German or English), 80 % corner cases, Half-Seen (050un), [training size], F1 = X ± Y (mean and standard deviation over three seeds). Cite the benchmark paper (see Citation below) and link to this repository. For zero-shot methods, state the model version and prompt instead of a training size.

For supervised matchers, pick a training set, select hyperparameters on the Seen validation set of the same corner-case ratio and size (000un_valid), and report F1 on the nine test sets as mean and standard deviation over three seeds. The test sets are the same for all training set sizes, so results obtained with different amounts of training data remain comparable.

For zero-shot and in-context learning, demonstration examples should be drawn from the training or validation sets.

For language comparisons, run the same configuration on the German and the English version. Splits, labels, and identifiers are identical, so any difference in the scores is attributable to the language of the records and the translation process. Since the record identifiers line up across the two versions, German records can also be paired with English ones to build cross-lingual matching tasks.

Downloads

Both language versions are available as zip archives containing all training, validation, and test sets described above. The five aligned test set variants of the cross-language experiment are available as a separate archive. The archives are stored with Git LFS in the data folder of the GitHub repository, which also contains the unpacked German and English files. Per-seed results, standard deviations, precision, and recall for all matchers are available under reports/final_results.

The downloads are version 1.1 of the benchmark (git tag v1.1.0). The changes relative to version 1.0 are documented in the CHANGELOG; version 1.0 remains available as git tag v1.0.0.

German version (original)

9 training sets, 27 validation sets, 9 test sets (143.5 MB).

Download solute_de.zip
English version (translation)

Structurally identical translation of every record with the same splits, labels, and identifiers (131.7 MB).

Download solute_en.zip
Cross-language test sets

The five aligned test set variants of the cross-language experiment (DE-DE, DE-EN, EN-DE, EN-EN, Mixed), 4,427 pairs each (13.3 MB).

Download solute_cross_language.zip

Conclusion

Billiger.de Products extends product matching evaluation beyond English with a large German benchmark and an aligned English translation spanning thirteen product categories. The 27 variants of the benchmark vary the training set size, the share of corner cases, and the fraction of unseen products in the test set.

The validation of the benchmark showed that both the benchmark variant and the product category influence the results. Supervised matchers generally benefit from the larger training sets and score lower as the share of corner-cases or the amount of unseen entities in the test set increases. No supervised matcher exceeds 55 F1 in the 80 % corner-case Unseen variants. Clothing and furniture are the hardest product categories for every matcher and electronics is among the easiest, which shows the value of evaluating matchers beyond electronics.

The comparison of the performance of the matchers on billiger.de Products (English) to the performance of the same matchers on WDC Products showed that Billiger.de Products is more difficult than WDC Products: the PLM-based matchers score 10 to 20 F1 below their published results on WDC Products. This feature might make the English version of Billiger.de Products an interesting alternative to WDC Products for matchers that have saturated WDC Products.

The cross-language experiment showed that supervised matchers trained on German pairs keep most of their performance when both records switch to English, but RoBERTa, XLM-R, HierGAT, and Ditto lose 5 to 8 F1 points on cross-language German-English pairs, whereas R-SupCon stays close to its German score. Zero-shot GPT-5.2 reaches the best scores on all language combinations and changes by at most 1.4 F1, which makes LLMs the most reliable choice for cross-language matching among the evaluated systems.

We hope that the benchmark will support the evaluation and development of entity matching methods for monolingual German and English settings, as well as for cross-lingual matching scenarios.

Questions and feedback are welcome. Please contact Aaron Steiner or open an issue in the GitHub repository.

Citation

If you use the benchmark, please cite the paper describing it:

@misc{steiner2026billiger,
  author = {Steiner, Aaron and Elagin, Ksenia and Peeters, Ralph and Knopp, Johannes and Bizer, Christian},
  title  = {Billiger.de Products: A Bilingual Entity Matching Benchmark},
  year   = {2026},
  eprint = {2609.37713},
  archivePrefix = {arXiv},
  primaryClass  = {cs.CL},
  url    = {https://arxiv.org/abs/2609.37713}
}