1. A method implemented by data processing apparatus, the method comprising: receiving a query from a client device wherein the query specifies a first product by specifying a product brand and a product model; determining, using the product brand and the product model, one or more specific product attributes associated with the first product; determining a respective correspondence between the one or more specific product attributes associated with the first product and one or more category attributes associated with one or more product categories, each product category having a predetermined plurality of category attributes; identifying, by data processing apparatus, a product category associated with the first product based on the determined respective correspondence; identifying a first set of one or more second products, the first set of second products having one or more attributes corresponding to the one or more category attributes associated with the product category of the first product; calculating, by data processing apparatus, respective distances between the one or more specific product attributes of the first product and corresponding attributes of products in the first set of second products; determining that one or more of the calculated respective distances satisfy a threshold; in response to the determining, identifying at least one product in the first set of second products as a suggested product based on the determination that the threshold is satisfied by one of the calculated respective distances; and providing the at least one identified product as a suggestion in response to the query.