openclaw
← All products
Communication & Outreach

reply-scorer

Cold-email reply classifier — 10 categories + suggested next action. Ships as coldmail addon ($49/mo) or standalone API.

Get startedSource on GitHub

Launch kit

reply-scorer — launch kit (coldmail addon)

1-liner

Cold-email reply classifier — 10 categories + suggested next action. Ships as coldmail addon ($49/mo) or standalone API.

Tweet hook

Apollo's reply classifier: 3 categories (positive / neutral / negative). Useless for SDRs.

Mine: interested, objection (with type), not_now, not_a_fit, OOO, hostile, forwarded, question, unsub, other. + suggested next action.

Stack: Claude Haiku + cache 🧵

Reddit

  • r/coldemail: "Reply classifier that actually tells you what to DO next"
  • r/sales: "Stop classifying replies as 'positive/negative'. Here's why."

Cold-email ICP

SDRs / sales ops at 5-50 person sales teams. Existing coldmail customers.

Cold-email template

Subject: stop classifying replies as 'positive'

Hi {first} — quick add for {sales team / their tool stack}.

Apollo's "positive/neutral/negative" tag wastes SDRs' time. Real
question is: did they object on PRICE, TIMING, AUTHORITY, FIT, TRUST?
Each gets a different next move.

I built a classifier that returns the objection type + suggested
action ("send Calendly", "answer the spec question + soft CTA",
"add to suppression").

$49/mo addon to coldmail or $99/mo standalone. Free 100 scores.

SEO content

  1. "Cold email reply classification: 10 categories that matter"
  2. "Apollo reply tags vs reply-scorer — comparison"
  3. "Objection-handler library by detected type"
  4. "Reply-rate to positive-rate: the funnel SDRs miss"

Documentation

reply-scorer

Cold-email reply classifier. Drop-in addon for coldmail (or any cold-outreach tool that supports webhooks). Tags incoming replies into 10 categories and suggests the next action for the SDR.

Why this exists

The reply-classification step is what separates a $0 outbound campaign from a $5K+ pipeline. Most teams either:

  • Eyeball every reply manually (slow, doesn't scale)
  • Use Apollo's basic sentiment tagging (positive/neutral/negative — way too coarse to act on)

We give you actionable categories: interested / objection / not_now / forwarded / unsubscribe etc., PLUS the type of objection (price/timing/authority/fit/trust) and the suggested next action.

Pricing

  • $49/mo addon to coldmail (1k reply scores included)
  • $99/mo standalone (1k scores)
  • $0.05 per scored reply PAYG
  • $499/mo unlimited

Architecture

incoming reply → POST /v1/score → Claude Haiku (cached system + offer)
                                      │
                                      ▼
                                {category, confidence, summary,
                                 suggested_action, objection_type,
                                 competitor}

Prompt-caching: the system prompt + the customer's offer block are ephemeral-cached. After the first call in a 5-min window, subsequent calls cost ~10% on those tokens. Same margin trick as coldmail.

Run locally

cd C:\openclaw-products\reply-scorer
python -m venv .venv
.\.venv\Scripts\activate
pip install -e ".[dev]"
$env:ANTHROPIC_API_KEY="sk-ant-..."

uvicorn src.api:app --port 8090

Test with curl:

curl -X POST http://localhost:8090/v1/score \
  -H "Content-Type: application/json" \
  -d '{
    "reply_text": "Already using Smartlead — what makes you different?",
    "original_offer": "We help mid-market sales teams cut ramp 50%..."
  }'

Categories

Category What it means Default suggested action
interested Yes / wants demo / book it Send Calendly + meeting prep
objection Engaged but pushing back Send objection-handler + ask permission
not_now Open later, not now Schedule follow-up 30/60/90 days
not_a_fit Clear no, fit issue Suppress + log
unsubscribe Opt-out Suppress immediately
oof Autoresponder Re-queue past return date
hostile Angry / spam-report risk Stop entire campaign on this domain
forwarded Routed to colleague Switch to the new contact
question Clarifying Q Answer + soft CTA
other Anything else Manual review

Test

pytest tests/ -v