Skip to content

Retail

A classified ads marketplace built around search

Classifieds live or die on whether a visitor finds the listing they wanted. That is a search and data-modelling problem before it is anything else, and it has to hold up across categories with almost nothing in common.

Faceted
Category-specific search across every listing type
Self-service
Listing creation, renewal and promotion
Moderated
Automated screening with human review queues

The challenge

A classifieds marketplace has two customers with opposing interests. Sellers want their listing seen. Buyers want to find one specific thing among hundreds of thousands of items that are mostly not it.

Everything else in the product is downstream of resolving that tension. If search is poor, buyers leave, and sellers follow them shortly afterwards because their listings stop producing enquiries. The network effect that makes a marketplace valuable runs in reverse just as easily.

The complication is that categories have almost nothing in common. A car listing is defined by make, model, year, mileage, fuel and transmission. An apartment is defined by floor area, number of rooms, floor number and heating type. A phone is defined by storage and condition. One schema cannot serve them, and a hundred bespoke schemas cannot be maintained.

Approach

Category attributes are data, not columns. Each category defines its own attribute set, with types, validation rules, whether an attribute is required, and whether it is searchable or filterable. Adding a category, or adding a field to an existing one, is an administrative action rather than a schema migration and a release.

This is the decision that everything else depends on. Get it wrong and every new category becomes a development project, which is precisely the constraint that stops a marketplace expanding into new verticals.

Search is built for filtering, not for keywords. Most classifieds visits do not begin with a search box. They begin with a category and then narrow: price range, location, then the attributes specific to that category. That means faceted filtering with accurate result counts is the primary interface, and free-text search supports it rather than the other way round.

Counts have to be correct as filters are applied, which is the part that constrains the indexing approach. A filter showing results that turn out to be empty is worse than not offering it.

Listings have a lifecycle, not a status. Draft, pending moderation, active, expiring, expired, renewed, sold, removed. Each transition has rules about who can trigger it and what happens to the listing’s visibility and search indexing. Modelling this explicitly, rather than as a set of boolean flags accumulated over time, is what keeps the behaviour predictable once promotions and renewals are layered on.

Moderation is tiered. Screening everything by hand does not scale, and screening nothing degrades the marketplace quickly. Automated checks handle the obvious cases, including duplicate detection, prohibited categories and pattern-matched contact-detail evasion, while anything uncertain lands in a review queue with the context a moderator needs to decide in seconds rather than minutes.

Images are treated as a pipeline. Listing photos arrive from phones at full resolution and in inconsistent orientations. They are processed on upload into the sizes the interface actually uses, stripped of location metadata, and served in modern formats. Doing this at upload rather than on request is what keeps listing pages fast on the mobile connections most buyers are using.

SEO is a product requirement. A large proportion of classifieds traffic arrives from search engines landing directly on a listing or a category. That makes server-rendered pages, clean category and listing URLs, and structured data part of the specification rather than an optimisation to be considered later.

Results

The platform runs self-service listing creation, renewal and promotion, with faceted category-specific search across every listing type and tiered moderation combining automated screening with human review queues.

The attribute model is the piece that has paid off most. Because categories and their fields are configured rather than coded, the marketplace can open a new vertical without engineering work, which is the difference between reacting to demand in a day and reacting to it in a quarter.

Have a project in mind?

Tell us what you are building. We will come back with an honest view of scope, approach and timeline.

We reply within one business day.