What we mean by a layer
A layer is a discrete piece of infrastructure your operation depends on daily. Not a feature toggle inside someone else's app. Not a dashboard you log into. The actual connection, pipeline, or store that makes the thing work.
WebSocket connection
The persistent channel between your customer and your operator. Rented chat vendors charge per seat for this. You can run it on your own API with your own database backing every message.
Event pipeline
The path from a browser click to a stored event, a heatmap rollup, or an alert, with a per-site vocabulary your team and your LLM share. Rented analytics vendors meter events and gate exports. You can own the ingest endpoint, the Event Catalog, object storage for replay chunks, and the retention cron.
Conversation store
Every message, attachment, and operator handoff tied to a customer across sites. Rented tools treat this as their asset with export limits. You can keep it in your database, query it on your terms, and retain it as long as your business requires.
Booking APIs, notification queues, and session replay storage follow the same pattern. If you depend on it to run the business and someone else sets the price, that's a layer worth owning.