Automation and integrations decision

Hook2TG

A small technical user can replicate the core webhook-to-Telegram functionality in about a week using serverless workers and an existing Telegram Bot API; the hosted product adds convenience, billing, and polished UX but no unreplicable moat.

Visit website
You pay

$1.67/mo

$20/yr

Read off the official pricing page.

You’d pay instead

$50one-off28 h to build

$5/mo6 h/mo upkeep

On cash alone, building overtakes the subscription at 6 seats.

Open-source builds that already do this

Every project below is open source and already does this job today. Fork one, self-host it, or take the parts you need - the build prompt further down assumes an empty file, and this is the shortcut past that. Licences differ; check the one on each card before you ship. All Hook2TG alternatives, with the arithmetic →

What a replacement has to do

  • Accept HTTP POST webhooks, choose/format message representation (text/YAML or JSON code block), forward message to Telegram via Bot API, manage bot tokens & webhook-to-chat mappings via a small dashboard, enforce per-webhook rate limits and retries.

What it still won’t have

  • Hosted SLA and global CDN provided by vendor (Cloudflare Workers-powered)
  • Polished multi-webhook dashboard UX and billing flow
  • Hosted encrypted secrets management and Stripe-based billing
  • Any proprietary scaling, monitoring, and team features the paid product adds

What remains hard

  • Product polish and ongoing maintenance
Read the build prompt

First-year cost

Keep paying

Paying is—cheaper in year one.

On cash alone, building overtakes the subscription at 6 seats.

Paid seatsseats

Money you would actually spend

Keep paying
—

Subscription price × seats × 12

Build it
—

AI build —APIs + hosting —

Time you would spend

—

—

What you would spend

What we assumed

The verdict above measures whether you could build it. This one is only about money.

Runnable build prompt

Not run yet
Build a minimal webhook-to-Telegram bridge using Cloudflare Workers + Workers KV and a small admin UI (React) hosted on static hosting. In scope: (1) a Cloudflare Worker HTTP POST /{webhookId} that looks up webhook config in KV, validates requests, and formats payloads into two modes: Text (JSON->YAML with MarkdownV2 escaping) and JSON (code block). (2) Telegram sender with exponential retries and honor Telegram rate limits; return JSON {ok:true} on success. (3) Admin React app with OAuth-lite or password-protected single-user login to create webhook entries (webhookId, bot token stored encrypted, target chat id, format, per-15min rate limit). (4) Persist configs in Workers KV and per-webhook counters in KV with TTL. (5) Tests for endpoint behavior, formatting correctness, and rate-limit enforcement; CI to run tests and deploy. Out of scope: multi-tenant billing, file/media forwarding, advanced analytics. Include error handling, logging, and unit tests for formatting and retry logic.
How we checked5 sources · 3/3 runs agreed · evidence score 93

How the score was reached

  • Build verdict base78
  • An open-source build was found+5
  • 5 cited sources+3
  • Price verified on pricing page+3
  • 3/3 assessment runs agreed+4
  • Evidence score93

The base comes from the verdict. Everything under it is a check that either happened or did not, and each one is a fact frozen in this record rather than a judgement made at render time - so the same evidence always produces the same number.

How scoring works →

Cited sources · 5

Every page the run actually retrieved.

Integrity checks

What held up, and what did not.

✓ Price read off the page✓ 3 independent runs, one answer✓ Citations limited to fetched pages! 1 moat recorded