SchnappalarmDEENStart free
← All articles

Keyword alerts vs. AI: how to stop getting pinged on Kleinanzeigen listings you don't want

There's a specific kind of failure that ruins deal alerts, and it isn't missing listings — it's getting too many. You set up a Kleinanzeigen alert for "PS5," and within a day your phone is buzzing about controllers, cases, single games, broken units "für Bastler," and someone selling a printed photo of a PS5. After the tenth false alarm you start ignoring the alerts. And the one time a real deal comes through, you scroll right past it, because you've trained yourself to.

This is the quiet killer of deal-hunting: alert fatigue. An alert you've learned to ignore is worse than no alert, because it costs attention and returns nothing. So the real problem to solve isn't "get notified" — it's "get notified only when it matters." Let's talk about why keyword alerts are bad at that, how far you can push them, and where AI filtering genuinely helps.

Why keyword matching floods you

A keyword alert — including Kleinanzeigen's native saved search — is basically string matching plus a few filters (price, location, category). It's fast and predictable, and for narrow, unambiguous searches it's fine. It falls apart for two reasons:

1. Words are ambiguous. "Lorcana" matches sealed booster boxes and single cards, playmats, sleeves, damaged bulk, and "Suche Lorcana" posts from other buyers. The word is present; the meaning you care about is not. Keyword matching can't tell the difference because it never understood what you were actually hunting.

2. Intent lives in the description, not the title. Whether a listing is a real deal often depends on a sentence buried in the body: "Displaymuster," "Bastlergerät," "nur Abholung," "Preis ist Verhandlungsbasis," "Karten einzeln erhältlich." A title-level keyword filter never reads that, so it can't act on it.

The result is a feed that's technically correct and practically useless.

How far plain keyword filters can take you

Before reaching for anything fancier, squeeze the keyword approach — most people never do:

Do all of this and you'll go from unusable to tolerable. But you'll hit a ceiling, because negatives are a blunt instrument. Exclude "einzeln" and you'll also kill the listing that says "verkaufe nicht einzeln, nur als Set" — which is exactly the sealed lot you wanted. Keywords can't read the sentence; they can only match the word.

Where AI filtering actually earns its place

This is the ceiling AI breaks through — and it's worth being precise about what kind of AI, because there's a lot of hand-waving in this space.

The useful version is simple: instead of matching strings, a language model reads each new listing's text — title, description, and price — and evaluates it against rules you write in plain language. Not a keyword list; an actual instruction. Something like:

"Only pass listings for sealed, unopened English Lorcana booster boxes or booster packs under 80€. Reject single cards, sleeves, playmats, damaged goods, and any 'looking for / Suche' posts. If it's a mixed lot, only pass it if it's clearly mostly sealed product."

A model reading the full text can honour that "sealed, not singles, but a mostly-sealed lot is fine" nuance in a way no negative-keyword list can, because it's weighing meaning, not presence. That's the entire value: it collapses the gap between what you can express and what a filter can enforce. You get far fewer false positives, which means you actually pay attention when it does ping — and attention is the whole point.

Two honest limits so you calibrate expectations:

How to write filter rules that work

Whether you use a native saved search with good negatives or an AI agent, the same discipline applies:

  1. Define the "yes" precisely. What exactly counts as a deal? Condition (sealed/used/for-parts), a hard price ceiling, must-haves.
  2. List the predictable "no"s. The recurring junk you already know floods this search — for keywords that's your negatives list; for AI it's your reject clause.
  3. Handle the ambiguous middle on purpose. Mixed lots, "VB," pickup-only. Decide the rule instead of leaving it to chance.
  4. Tune from real misses. Every false positive that gets through and every real deal that got blocked is a line to add. A filter you never revise slowly rots.

The tool I built for this

Because it's my own, I'll be plain about it. I run an AI agent that watches one eBay Kleinanzeigen search and, for each new listing, does exactly the text-filtering above: it reads the title, description, and price, applies the plain-language rules I wrote, and only then sends a Discord ping — as often as about once a minute on the paid tier, every 15 minutes on the free one. It uses Google's Gemini for the reading, and you bring your own Gemini API key.

The honest scope, so nobody's surprised: Kleinanzeigen only, Discord only (no email or Telegram), and it filters on text — it does not analyse images. And the same caveat that applies to any automated monitor applies here: auto-watching Kleinanzeigen is a gray area against the platform's terms and robots.txt, so it polls at human-like intervals and never bids or buys — it just decides whether a listing is worth telling you about.

Bottom line

The goal was never "more alerts." It's fewer, better ones — a feed quiet enough that a buzz means go. Start by making keyword filters do real work with tight searches and good negatives; most people stop before this and suffer for it. When your rules outgrow what words can express — "sealed, not singles, but a mostly-sealed lot is fine" — that's when reading the full listing text with AI stops being a gimmick and starts saving you the one thing that actually matters: your attention.


The agent above is Schnappalarmstart free. Write your rules in plain language; it reads each new Kleinanzeigen listing's text and pings your Discord only on the ones that pass. Kleinanzeigen-only, Discord-only, bring your own Gemini key.

Related