Skip to main content
Smart Groups let you organize and place search results based on custom logic. You can place groups of items that match specific criteria at specific positions in your search results. Smart Groups let you organize and place search results based on rules, so you don’t need to manage product positions individually. You can populate Smart Groups in two ways:
  • Search-based groups: you define criteria (like brand or category) and Algolia automatically selects matching items from your index.
  • External source groups: you provide specific object IDs from an external system (like a retail media platform or recommendation engine).
Both approaches give you precise control over where promoted items appear in results, while automatically handling pagination and faceting. Configure deduplication strategies to control how Algolia resolves duplicates between and injected results. Diagram that shows Smart Groups injected among organic results

Use cases

Monetize with sponsored listings (external source groups)

With external source groups, you can integrate retail media platforms to display sponsored products based on real-time bids from brand partners. This creates a new revenue stream beyond direct product sales. For example, on a search for “running shoes,” you could display two sponsored products from brands bidding through your retail media platform at positions 1 and 5, while showing organic results on the rest of the page.
Retail media platforms (RMPs), such as Criteo, CitrusAd, and Zitcha, manage sponsored product campaigns, handle ad inventories, bidding, targeting, and reporting. RMPs provide APIs to fetch sponsored products for a search query or category, which you can then inject into your search results at specific positions.

Monetize your results grid (search-based groups)

Use search-based groups to highlight products or content from a preferred brand or partner. For example, you want to promote a group of products based on a contract with a particular brand, to feature them in top positions on high-grossing categories or queries. For your Footwear category, you create a group for brand: Adidas to place two items at position 5.

Highlight new, trending, on-sale, high-margin results (search-based groups)

Promote on-sale, new, trending, highly rated, or high-margin products to support goals like increasing conversions or prioritizing high-margin items. For example, you could create a Smart Group filtered by the attribute high_margin: true, with four items injected at position 5 in the results grid.

Create visual experiences by grouping results (search-based groups)

With Smart Groups, you can create visually cohesive experiences by grouping products or results that share similarities. For example, during autumn campaigns, highlight products with warm tones in some categories. For your Women category, create:
  • A group filtered by the attribute color: brown with four items placed at position 1 in the results grid.
  • A group filtered by the attribute color: cream with four items placed at position 5 in the results grid.
You can define up to three groups per composition. You can mix search-based groups with external source groups in the same composition.

Decide between search-based and external source groups

The following table compares search-based groups and external source groups to help you choose the right approach:
Search-based groupsExternal source groups
Best fit when you• Have longer-running campaigns or partnerships with specific brands
• Want to apply Algolia’s AI-ranking to choose the most relevant sponsored results for specific queries or categories
• Don’t have a retail media platform (RMP)
• Have an RMP for bidding, reporting, and payments
• Prefer a real-time, bidding-based approach for selecting sponsored results

Key concepts

An entity in Algolia that helps you compose results with more control, including to insert groups into regular results. A composition is a dynamic results feed.
Any ranked results list of search or browse results you have on your website or app. For example, you might have UK product results feeds, a UK content results feed, a UK help results feed, and equivalents for your French website.
A rule that defines when and where to insert Smart Groups, for a given search query, category page, collection, or matching context.
A smart group is a group of results that match certain criteria, inserted in a specific position into the results feed. The API refers to a group as injectedItem.
Search-based groups use Algolia filters to automatically select items that match your criteria. You define what to promote (like brand:Adidas AND in_stock:true), and Algolia finds which items match.Algolia’s AI-powered ranking determines which matching items are most relevant to the user’s query, ensuring promoted items still feel natural in the context of their search.
External source groups let you specify which items to promote by providing a list of ObjectIDs. These ObjectIDs come from an external system like:
  • Retail media platforms
  • Custom bidding or campaign management systems
Your backend calls the external source, receives objectIDs, then passes them to Algolia’s Composition API. Algolia handles injection, deduplication, and optional re-ranking by relevance.

Composition rules and index rules

Index rules apply to both the main results (organic results before group injection) and the group results. To retrieve and rank relevant results, Algolia runs separate subqueries for both the main results and each group. Each subquery can trigger index rules. Each group subquery combines the top-level query and filters from the main results, plus any filters you’ve defined specifically for the group. Explain how sub-requests work Composition rules have higher precedence than index-level rules. For example, if an index-level rule pins a record to position 3 and you’ve configured a group to start at position 3, Algolia inserts the group first, placing its items from position 3 onward based on the group’s size. Algolia moves the pinned item to the next available position after the group.
You can curate results (for example pin, hide, or further boost certain items) within a group using index rules that apply to the corresponding sub-query. To learn more, see Curate groups.

Difference between Smart Groups and pinning and boosting

Index-level pinning places items statically, one by one. You must keep your pins up-to-date over time, for example, when an item goes out of stock. In contrast, Smart Groups inject items dynamically based on attribute filters. Algolia uses a subquery to find the most relevant matches, so you don’t need to update the group manually. Index-level pinning affects ranking but Smart Groups let you control where promoted items appear in the results.

Next steps