Back to blog
    Collections
    13 min

    Making collection suggestions watertight: brand detection, chunking, and validation

    Making collection suggestions watertight: brand detection, chunking, and validation

    Automatically linking products to the right collections sounds simple, until you apply it to a catalog with hundreds of collections and thousands of products. Without the right safeguards, automatic matching leads to exactly the kind of mistakes that undermine trust in AI enrichment: a children's product ending up in an adult collection, or a product from brand A being linked to a collection meant exclusively for brand B. In this article we explain how pshly.ai makes collection suggestions watertight.

    The problem with naive matching

    A simple approach would be to compare keywords from the product title with keywords in the collection name and suggest a match based on that. That works for obvious cases, but fails once collections become more specific — for example a collection reserved for a specific brand, a specific audience, or a specific product type that looks similar to other products on the surface but is functionally different. Without additional logic, this creates false positives: suggestions that seem plausible at first glance but don't hold up on closer inspection.

    Brand detection from collection titles

    The first safeguard is recognizing brand names in the collection title itself. When a collection contains a brand name — for example "Pandora bracelets" or "Nike running shoes" — this is detected and treated as a hard condition. A product is only linked to that collection if it's actually from that brand, regardless of how well the rest of the product text seems to fit content-wise. This prevents the most common mistake in automatic collection suggestions: a visually or thematically similar product that happens to be from a different brand getting incorrectly linked to a brand-specific collection.

    Chunking for large collection lists

    Stores with more than 60 collections run into a technical limitation: it isn't efficient or reliable to present all collections at once to a language model for matching. As the list grows longer, the chance increases that relevant collections get overlooked or that matching quality drops due to the size of the context. To prevent this, the collection list is split into smaller, manageable groups for larger catalogs — a process called chunking. Each group is analyzed separately against the product, after which the results are combined. This keeps match quality consistent, whether a store has 20 or 200 collections.

    Minimum score as a threshold

    Not every match found is strong enough to show as a suggestion. For every potential match between a product and a collection, a relevance score is calculated based on how well product type, characteristics, and context align with the collection's content. Only matches that exceed a configured minimum score are actually presented as suggestions. This prevents weak, questionable matches from cluttering your collection overview with products that don't quite fit.

    Post-validation on brand, audience, and type

    After the first matching round, a separate validation step checks every proposed link again on three specific dimensions:

    • Brand: does the product's brand match any brand restrictions of the collection.
    • Audience: does the product fit the audience implied by the collection — for example children's clothing versus adult clothing, or men's versus women's.
    • Product type: is the actual product type consistent with what the collection describes, even if the textual overlap seems significant.

    This validation step acts as a second filter, separate from the initial score calculation, and catches cases where a match seems textually strong but doesn't hold up in content. Only after passing this validation is a suggestion considered reliable enough to present to you.

    Why false positives are so damaging

    One incorrectly linked product in a collection is more than a minor mistake. It undermines the coherence of the entire collection in the eyes of a customer, can create confusion about brand identity, and damages trust in the rest of the collection. For collections specifically meant for a brand partner or an exclusive audience, an incorrect link can even touch on contractual or brand-related sensitivities. That's why the combination of brand detection, score threshold, and post-validation is deliberately conservative: it's better to miss a valid suggestion than to show an incorrect one.

    How this works in practice

    At a store with several brand-specific collections alongside general thematic collections, brand detection ensured products from guest brands never accidentally ended up in another brand's collection, even when product descriptions looked very similar. Chunking kept match quality stable despite a list of more than 80 collections, and the post-validation step filtered out a small number of suggestions that looked plausible at the text level but didn't fit the audience.

    What you can do yourself to improve matches

    • Make sure collection titles and descriptions are consistent and specific, so brand and audience detection work reliably.
    • Keep brand-specific collections visually and textually clearly distinct from general collections.
    • Sample-check the suggested matches on a first bulk run before applying them to the full catalog.

    For more on how collection descriptions themselves are generated and optimized, see the page on collection descriptions.

    The minimum score as a quality dial

    Every collection suggestion carries a score expressing how confident the model is in the match. The minimum-score setting decides where the cut-off sits. Set it low and you get full coverage with more noise and therefore more review work. Set it high and only certain matches survive, but you miss edge cases. In practice a two-stage approach works best: run first with a high threshold and push those through almost unseen, then run again with a lower threshold and deliberately walk through the remaining borderline cases.

    Brand and audience validation against misplacements

    Most incorrect placements happen because a product looks right but does not belong to the collection by brand or target audience. That is why a validation step on brand and audience runs after the AI analysis: products from a different brand than the collection prescribes, or aimed at a different audience, drop out automatically. Large batches are also processed in chunks, so the model keeps enough context per part and no products fall away because of an overly long list in a single call.

    Conclusion

    Automatic collection suggestions are only valuable if you can trust them to be correct. By combining brand detection, chunking for large lists, a minimum score threshold, and a separate post-validation step, the system in pshly.ai is deliberately designed to minimize false positives rather than simply generating as many suggestions as possible.

    Want to see how reliable the collection suggestions are for your catalog? Start free and view the first proposals for your own collections.

    Frequently asked questions

    Why are some collections missing from the suggestions?

    Usually because the minimum score is set too high, or because the collection itself lacks a clear description. Lower the threshold or expand the collection description and the model recognises the theme better.

    How do I prevent products landing in the wrong collection?

    Keep brand and audience validation switched on. It filters out products after the AI analysis that fit visually but not by brand or audience.

    Does this work for catalogues of thousands of products?

    Yes. Large batches are processed in chunks so the model retains context per part; the job runs server-side with a progress bar and logs.

    Are existing collection assignments overwritten?

    No. Suggestions land in the review modal first and are only pushed to Shopify after you approve them.