Chrome extension for X

Reply to the right posts.

Winnow scores every post in your timeline as you scroll and highlights the few worth replying to. The rest fade out. No AI, no automation, no login — just arithmetic running in your browser.

Add to Chrome — free See pricing Unlimited scanning, 10 hits a day, no account needed.
An X timeline with two posts highlighted by a green edge and a score badge
Two posts worth answering on a real timeline. You can see it at a glance.
Why this exists

I was replying to the wrong posts.

Growth numbers pending. This section is intentionally blank until it can be filled in with figures that actually happened — see site/src/data/site.ts.
Pablo's X Analytics dashboard: daily replies and net follows over the account's first four weeks
Straight from X Analytics, unedited — replies and follows over the account's first four weeks, dips included.

Placeholder: how you were replying to the wrong posts — the ones already forty replies deep, or three hours cold — and what changed when you started filtering for freshness and headroom instead of scrolling.

Placeholder: the number you care about, and what it looked like before and after.

Replying well on X is mostly a timing problem. The same reply is worth a great deal in the first fifteen minutes of a post with room left in it, and almost nothing on a post that already has forty replies and has finished being read. You cannot judge that by scrolling, because scrolling shows you popularity, which is the opposite signal.

So Winnow computes it. Age, views, replies, your keywords. Three numbers, one score, and a green edge on the handful that are worth your words.

A couple of threads from along the way:

Shipped a paywall with @RevenueCat and had no idea what it was actually doing until I put @posthog in front of it. Some things I learned wiring the two together 🧵

🎯 A funnel step that converts at 100% isn't a step. Mine went cta_tapped → paywall_viewed, always 100%, every time — that's the same event logged twice, and it made the funnel look one stage healthier than it was.

Read the full thread on X →

Building a subscription business on Stripe? Some things I learned doing a full integration from scratch 🧵

In subscription data terms, the provider is the source of truth, not your database. Always re-fetch the subscription from Stripe before trusting its status — the cached copy in your DB is stale the moment it’s written.

Read the full thread on X →
How it scores

Three signals, one number, every time the same.

Every post gets 0–100. At or above your threshold it gets a coloured edge and a badge. Below it, it dims to 40%.

50%

Freshness

A conversation you join in the first fifteen minutes is a different conversation from one you join three hours late. Freshness is the heaviest signal for exactly that reason.

30%

Headroom

Lots of views and few replies means your reply gets read. A post already forty replies deep is a room nobody is listening in. Winnow scores the gap between attention and competition.

20%

Relevance

The fraction of your keywords in the post. You set them. There is no model deciding what you care about, which is why the score is the same every time.

Thrown out before scoring: replies, accounts on your blacklist, posts past your maximum age, and engagement bait — “drop your link”, “like and RT”, “comment below”. When X does not render a view count, that signal is dropped rather than counted as zero, so a post is judged on what can actually be seen.
A score badge on a post, with its hover tooltip showing the post's age, views, replies and matched keyword
Hover a highlighted post and it tells you why, in words: “21 min old · 39 views · no replies yet · matched: revenue”.
What it will never do

A filter. Not a bot.

These are constraints on how Winnow is built, not features waiting to be added.

It never posts for you

Winnow is read-only. It does not post, reply, like, follow, or click anything on your behalf. It reads the page and marks it up.

It never sees your login

No OAuth, no X API, no sign-in with X. It reads the page you are already looking at, in your own browser.

Nothing leaves your browser

No analytics, no tracking, no server of ours. The only outbound request in the whole extension is validating your licence key, and it contains nothing but the key.

No AI, on purpose

Scoring is local arithmetic. That is why it is instant, why it works offline, why it costs nothing to run, and why the same post always gets the same score.

Your rules

Working in one click, tunable forever after.

Install it and pick the profile closest to what you write about. That fills in the keywords and thresholds, and Winnow starts scoring immediately — no configuration screen to grind through first.

The first-run screen offering four profiles: indie hacker, backend, mobile and product design
Four starting points. Pick one, or skip it and write your own keywords.

Everything stays editable: keywords, a handle blacklist, maximum age, minimum views, maximum replies, and the score threshold. Changes apply to open tabs immediately, and the same profiles are one click away in settings.

Winnow's settings page: keywords, handle blacklist, filters and score threshold
Everything is a plain setting. Nothing is learned, inferred, or decided for you.
Pricing

Try it free every day. Pay once if it earns it.

Free

$0

forever

  • Unlimited scanning, 10 hits a day
  • Resets at your local midnight
  • Every filter and setting
  • No account, no card
Add to Chrome

Checkout is handled by Lemon Squeezy, who email your licence key the moment you buy. Paste it into the extension's settings page and it activates. One payment. Updates included for as long as the extension exists.

Affiliates

Know people who'd want this?

Share your link, earn 30% of every sale it brings in — a one-time commission, since Winnow itself is a one-time purchase, not a subscription. Sign-up is instant, no approval wait.

Become an affiliate
Questions

The ones worth asking.

Does it post or reply for me?

No. Winnow is read-only and always will be. It never posts, replies, likes, follows, or clicks anything on your behalf — it adds a highlight and a score badge to posts already on your screen, and nothing else. It is a filter for deciding where to spend your own words.

Do you need my X login?

No. There is no sign-in with X, no OAuth, and no use of the X API. Winnow reads the timeline you are already looking at, in your own browser, using your own session. It never sees your credentials because it never asks for them.

What happens when X changes its layout?

It gets fixed, and the update is included. Every selector Winnow uses lives in a single file, precisely so that a markup change is a one-file fix rather than a rewrite. X ships layout changes regularly; keeping up with them is the maintenance this is priced for. If something looks broken, email me and it will usually be out within a day or two.

What do I get for free?

Unlimited scanning and dimming — that's free at every tier, it's just local arithmetic. The free tier caps the part that's actually valuable: 10 highlighted hits a day, resetting at midnight your local time. Once those are used, a post that would have been the next hit is left completely untouched rather than dimmed — dimming it would misrepresent a score that really did clear your threshold.

How long does setup take?

One click. On install you pick one of four profiles — indie hacker, backend, mobile, or product design — and it fills in the keywords and thresholds for you. Prefer your own list? "Set up my own keywords" goes straight to that field instead. Either way, if you ever end up with none configured, the toolbar icon carries a reminder until you add some — relevance just doesn't do anything without them.

Where does my data go?

Nowhere. Your keywords, blacklist and settings are stored locally in the browser. Post content is read, scored, and discarded — it is never stored or transmitted. There is no analytics and no backend.

Which parts of X does it work on?

The home timeline, search results including the Latest tab, and community feeds.

How does the licence work?

You get a licence key by email the moment you buy. Paste it into the settings page and it activates. It is re-checked once a week, and if the licence server is ever down, Winnow keeps working — an outage on their end will not lock you out of software you paid for.

Is this a subscription?

No. $29 is a one-time payment — no recurring charge, no trial that quietly turns into a subscription. Pay once, unlimited scoring for as long as the extension exists.

Can I use my licence on more than one computer?

Yes, up to a small number of activations — enough for a laptop and a desktop, or a reinstall, without the key being something to share around. If you're switching machines and it won't activate, email me and I'll reset it.

Add to Chrome — free Still not sure? Email me: support@winnowapp.app