← Back to all tools
Communication

Stream Chat

APIs and SDKs for building in-app chat, messaging, and activity feeds, with pre-built UI kits for React, React Native, and native mobile platforms.

Add an embedded support chat widget to a free SaaS landing page
Build a community chat for a niche Discord-like product with under 1,000 active users
Prototype a 1-on-1 messaging feature before validating product-market fit

Free Build plan: 1,000 MAU, 100 concurrent connections, 1M API calls/month, 10GB API bandwidth/month. No credit card required.

The free Build plan caps you at 1,000 monthly active users and 100 concurrent connections — fine for a beta or small community, but you must upgrade ($399/mo Start) before a real launch, so time your migration. Watch the 1M API call budget: cron jobs that poll query channels are the most common cause of overage, so use webhooks and channel watches instead of polling. Message storage is limited on free ('Limits Apply'), so mirror messages to your own database via webhooks early if you need history. Combine with Neon or Supabase for user/message persistence, and issue user tokens server-side (e.g., a Cloudflare Worker) instead of the client-side generator before going public.

Sign up at getstream.io with GitHub or email (no credit card) → create a new app in the dashboard and select Chat + your platform (React, React Native, etc.) → copy the app ID, key, and secret → install the SDK (npm install stream-chat) → initialize the client with your app ID and key → generate a user token (dashboard generator works for testing; use a backend for production) → connect the user, create a channel, and send your first message.

Pros

  • UI kits: Pre-built, customizable chat UI components for React and native platforms save weeks of frontend work
  • No credit card: Free Build plan activates immediately with no payment method and no surprise charges
  • Rich features: Threads, reactions, typing indicators, moderation, and read states work out of the box

Cons

  • MAU ceiling: 1,000 MAU is a hard cap; the next tier is a steep $399/mo jump for small projects
  • Concurrent limit: 100 concurrent connections blocks realistic load testing and can drop users during spikes
  • Storage limits: Message storage is limited on free — long-term history requires your own persistence via webhooks