Marktplaats and 2dehands: condition, delivery and buy-now filters did not filter

Date: 2026-09-14
Affected: marktplaats-scraper, tweedehands-scraper
Duration: unknown start between 19 July and 14 September 2026; fixed builds live 14 September

What happened

On 14 September 2026 we found that the conditions, delivery and buyItNowOnly inputs of the Marktplaats and 2dehands scrapers had no effect on a search without a categoryId, and none inside a category that does not offer that filter. The runs succeeded and returned listings, but the listings were not filtered: a search for used items returned new ones as well.

Impact

Any run that combined one of those filters with a search across all categories, or with a category lacking the filter, received unfiltered listings and was charged per listing delivered.

We cannot say how many runs this affected. Runs execute in our customers' own Apify accounts, and we do not see their inputs. The filters were verified working when they were added on 19 July 2026; we do not know on which date the behaviour changed.

If you ran such a search, open an issue on the actor's Issues tab (Marktplaats, 2dehands) with the date of the run, and we will look at the charge with you.

Root cause

Both sites run on the same search API. It applies attribute filters (condition, delivery, buy-now, posting age) only inside a category that offers them. On a search across all categories, or inside a category without that filter, it accepts the filter, lists it back in its own response as if applied, and returns the unfiltered result: the same total and the same first 30 listings as without it. Nothing in the response signalled an error.

Our tests checked the request we built, not whether the listings that came back matched the filter, and our scheduled checks ran without these filters. Neither could see this.

Fix

Shipped 14 September. A filtered search without a category now runs category by category with the filters applied, skipping the categories that do not offer them. A search in a category that does not offer a requested filter now fails before delivering anything, and says which filter and why; so does a search where no category with listings offers it. On a live check, a search for used Trek listings on 2ememain.be returned 150 of 150 used listings.

What changed so it cannot recur this way

A scheduled check now runs a filtered search without a category every five days. When we know a filter cannot be applied, the run says so and stops, rather than returning results that look filtered.

Questions about this incident? contact@lowlanddata.com - reports get read the same day.