RealtimeAll sections
Realtime
Realtime pushes changes to your app as they happen. When a row is inserted, updated or deleted in a table you stream, every screen subscribed to that table receives the change without refreshing.
In the console: Build › RealtimeUpdated October 12, 2026
Why you need it
Without it, an app only learns about new data when it asks again: the user refreshes, or the app polls every few seconds and spends requests on nothing. Chat, order status, live dashboards and shared lists all feel broken when they lag. Realtime turns the database’s own change notifications into a live stream, so the screen updates when the data does.
For example
- A new chat message appears for everyone in the conversation as soon as it is sent.
- A customer watches an order go from paid to shipped without refreshing the page.
- A team dashboard updates its numbers as new rows arrive.
- A shared document shows who else is viewing it right now.
How it works
Your agent turns it on for a table
Realtime is per table. Backenly installs a change trigger on it, and the Realtime page lists every table that is streaming.
PostgreSQL announces each change
Every insert, update and delete fires a notification from inside the database, whoever made the change.
Backenly streams it to your app
Over Server-Sent Events, through one shared listener, so a busy project does not use up database connections. The SDK reconnects on its own after a drop.
Your app applies it
Your callback receives the event type and the row. The same connection also carries presence (who is online) and short broadcast messages.
Try it
Once your coding agent is connected, ask it:
Enable realtime on the messages table so new messages appear without a refresh.const unsubscribe = backend.realtime.subscribe('messages', (event) => {
// event.type is 'insert', 'update' or 'delete'
render(event)
})Good to know
- Changes made while a connection is down are not replayed. If your app needs every change, fetch the latest rows through the API after it reconnects.
- Realtime carries row changes, not a stream of progress. To show progress on a slow job, keep its status in a column and subscribe to that table.
- Presence treats a user as online for 60 seconds after their last activity. Broadcast messages are limited to 6 KB and are not stored.
- The number of open realtime connections depends on your plan. See Pricing.