/ product overview

Powerful Features for Real-time Apps

Everything you need to build scalable, reliable real-time applications. From pub/sub messaging to presence tracking and beyond.

Real-time Pub/Sub Messaging

Topic-based publish-subscribe messaging built on WebSocket connections. Messages are delivered in milliseconds with automatic reconnection and message queuing.

  • Topic-based routing with wildcards
  • Automatic reconnection handling
  • Message queuing for offline clients
  • Binary and JSON message support

Presence Tracking

Know who's online in real-time. Track user presence across your entire application with automatic join/leave events.

  • Real-time online/offline status
  • Per-topic presence lists
  • Custom presence metadata
  • Presence change callbacks

Quality of Service (QoS)

Choose the right delivery guarantee for your use case. From fire-and-forget to exactly-once delivery.

  • QoS 0: At-most-once (fire and forget)
  • QoS 1: At-least-once (acknowledged)
  • QoS 2: Exactly-once (transactional)
  • Per-message QoS configuration

Access Control (ACL)

Fine-grained permissions for every topic. Control who can publish, subscribe, and manage topics with role-based access.

  • Per-topic read/write permissions
  • Role-based access control
  • Actor-level authentication
  • API key scoping

Rooms & Namespaces

Organize your topics into logical rooms. Isolate conversations, games, or sessions with automatic namespace management.

  • Logical topic grouping
  • Room-level presence tracking
  • Automatic cleanup on disconnect
  • Cross-room messaging

Topic Filters

Narrow message delivery to specific entities within a topic. Subscribe to "bookings" with filters ["booking_1", "booking_2"] and only receive updates for those items. Swap filters dynamically without resubscribing.

  • Filter by entity ID within a topic
  • Dynamic filter management (set, add, remove)
  • Infrastructure-level routing — no payload inspection
  • Up to 100 filters per topic per connection

Webhooks

Integrate with external systems using hydration and trigger webhooks. Pre-populate state on subscribe and react to published messages.

  • Hydration webhooks for initial state
  • Trigger webhooks for external integrations
  • Dead Letter Queue for failed requests
  • Custom headers and authentication

Message Logging & Replay

Persist messages for debugging, auditing, and reliable delivery. Automatically replay missed messages when clients reconnect.

  • Configurable per-topic logging
  • Message history for debugging
  • Automatic replay on reconnect
  • Configurable retention periods

Lobbies

Observe presence across multiple rooms simultaneously. Perfect for dashboards, admin panels, and monitoring applications.

  • Multi-room presence observation
  • Dashboard and ops center views
  • Real-time status aggregation
  • Up to 10 lobbies per room

Usage Analytics

Track connections, messages, and bandwidth in real-time. Monitor your application health with detailed usage metrics.

  • Real-time connection metrics
  • Daily message aggregates
  • Bandwidth tracking
  • Per-app usage breakdowns

Built for Production

Production-grade infrastructure with the developer experience you deserve.

MessagePack Protocol

Efficient binary serialization for minimal bandwidth usage and fast parsing.

Multi-Region

Deploy closer to your users with edge locations worldwide.

Auto-Reconnection

Automatic reconnection with exponential backoff and message replay.

Analytics Dashboard

Real-time metrics, connection stats, and message throughput monitoring.

TypeScript First

Full TypeScript support with typed events and autocomplete.

Scalable Infrastructure

Built on Erlang/OTP for fault-tolerant, distributed messaging.

Technical Overview

The technical details that make NoLag fast, reliable, and developer-friendly.

Protocol Specifications

Transport
WebSocket (binary)
Serialization
MessagePack (not JSON)
Max Message Size
256KB
Heartbeat
30 seconds
Reconnect Attempts
Up to 10 with exponential backoff

Delivery Guarantees (QoS)

QoS 0At Most Once

Fire-and-forget (fastest)

QoS 1At Least Once(Default)

Guaranteed delivery, may duplicate (default)

QoS 2Exactly Once

Guaranteed single delivery (transactions)

Actor Types (Who Connects)

Device

Frontend clients

Example: Browser, mobile app

User

Authenticated users

Example: Logged-in account

Server

Backend services

Example: Your API server

Session

Temporary connections

Example: Anonymous guest

See it in action

Try our interactive playground or dive into the documentation.