Dynamic filtering Filtering that recalculates the available options in real time based on the user’s selections, displaying only attribute combinations that lead to actual results. Definition Definition Dynamic filtering is the behavior that keeps a filter panel honest while someone is using it: every time a shopper selects an option, the system recalculates which other options are still worth showing, updates the count next to each one, and hides or grays out any combination that would return zero results. Static filtering, by contrast, shows every possible value all the time, whether or not it still applies. A shopper filtering "brand: Nike" and then seeing "size: 46 wide" as an option, even though Nike doesn't make that size, is a static filter panel. Dynamic filtering would either hide that option or show it grayed out with a "(0)" next to it, before the shopper wastes a click finding out it leads nowhere. This sits one layer above attribute-based filtering, which is the mechanism that matches a selected value against a product's attribute data. Dynamic filtering adds the live recalculation on top: after every selection, the system re-runs the query against the remaining filtered set and refreshes every other filter option's count and availability. It's also the core mechanic behind faceted navigation. Faceted navigation is the umbrella term for filtering by multiple attributes at once; dynamic filtering describes specifically the real-time, self-correcting part of that experience. What it's used for What it's used for Filter panels that don't update live create dead ends. A shopper picks two or three filters, gets to zero results, and either has to backtrack through each one to find which selection killed the results, or gives up. That's a common failure mode in ecommerce filtering, and it's avoidable with dynamic recalculation. Beyond avoiding dead ends, dynamic filtering shortens the path to a decision. Seeing "(12)" next to "In stock" and "(0)" next to "Ships in 24h" tells the shopper immediately what's realistic, without having to click through and find out the hard way. That reduces the number of filter combinations a shopper tries before landing on a set of results they're happy with. How Doofinder applies it Doofinder recalculates facet counts on every filter interaction, querying the live catalog index rather than a cached count. When a shopper narrows results by category, brand, or price, every remaining facet option updates its count immediately, and options that would return no results are automatically deprioritized or hidden, depending on how the store has facets configured. Because this runs against the same index used for search, stock and price changes are reflected in real time. A product that sells out mid-session stops counting toward its filter's total on the next interaction, rather than showing a stale number. Example Case study Example An outdoor gear store's filter panel lets shoppers combine brand, size, and waterproofing. Without dynamic filtering, a shopper selects "Brand: Salomon," then "Size: 47," then "Waterproof: Yes," and lands on zero results, with no indication of which of the three choices caused it. They have to remove filters one at a time to figure out that Salomon doesn't carry a waterproof boot in size 47. With dynamic filtering turned on, as soon as the shopper selects "Brand: Salomon," the "Waterproof: Yes" option updates to show "(0)" before they even click it. They see the dead end coming and pick a different brand instead, without ever hitting an empty results page. References Sources https://doofinder.com/en/blog/faceted-search