Ingestion
How events flow from your application to queryable analytics data.
How Event Collection Works
Bosca Analytics automatically collects events from your web applications. When a user visits a page, clicks a button, submits a form, or encounters an error, that activity is captured as an event and sent to the analytics system. No manual tagging of individual interactions is required for basic tracking — the system handles it automatically.
Events are collected from two sources:
- Browser collection — The browser analytics library runs in your web application and automatically captures user activity. It is lightweight and designed to have minimal impact on page performance.
- Server collection — Server-side events can also be sent to the analytics system for tracking actions that happen outside the browser, such as background jobs, API calls, or backend processes.
What Gets Captured Automatically
The browser analytics library captures three categories of events without any configuration:
| Event Type | What Is Captured | When It Fires |
|---|---|---|
| Page Views | The page URL, title, and referrer | Every time the user navigates to a new page or route |
| Interactions | The action performed (click, submit) and the target element | When users interact with tracked elements on the page |
| Errors | The error type, message, and stack trace | When an unhandled JavaScript error or promise rejection occurs |
In addition to these event-specific details, every event automatically includes contextual information:
- Timing — When the event was created in the browser and when it was received by the server
- Device information — Browser type, screen resolution, and operating system
- Page context — The current URL, page title, and referring page
- User identity — If the user is logged in, their identity is associated with events
Custom Events
Beyond automatic tracking, you can send custom events for business-specific actions that the automatic tracking does not cover. Custom events let you track things like:
- Purchases and transactions
- Feature usage and feature flag interactions
- Onboarding step completions
- Search queries and result clicks
- Any other action that matters to your business
The Event Pipeline
Events do not go directly from your application into the database. They flow through a pipeline that enriches and processes them before they become queryable. Understanding this pipeline helps you know what data is available in your queries and how quickly events become visible.
- Collection. Events from browsers and servers are received by the analytics collector. Events are batched for efficiency — the browser library groups events together and sends them in batches rather than one at a time. When a user leaves the page, any remaining events are flushed immediately to avoid data loss.
- Enrichment. The pipeline automatically adds information that was not available at the time of collection:
- Geographic data — Country, region, city, and approximate coordinates are determined from the request origin, enabling geographic analysis and map visualizations.
- Error grouping. Error events are analyzed and assigned a fingerprint — a stable identifier that groups similar errors together. This means the same bug occurring across different users and sessions is recognized as a single issue rather than thousands of individual errors. See Error Tracking for more on how error groups work.
- Storage. Enriched events are written to a high-performance data warehouse optimized for analytical queries. Once stored, events are immediately queryable through the query system.
How Data Becomes Queryable
Bosca Analytics uses a modern data warehouse architecture to store and query events. Events are stored in a format optimized for analytical workloads — scanning millions of events, computing aggregates, filtering by time ranges, and joining across dimensions. This is the same kind of technology used by large-scale data platforms.
The query engine supports standard SQL, which means the full power of SQL is available when writing analytics queries: filtering, grouping, aggregation, window functions, joins, and subqueries all work as expected.
What You Can Analyze
Once events are flowing through the pipeline, you can build queries and dashboards that answer questions like:
- How many users visited each page this week, and how does that compare to last week?
- Which countries generate the most traffic?
- What is the most common error on the site right now?
- How does feature usage change after a new release?
- What is the conversion rate from the landing page to sign-up?
- Which browsers or devices produce the most errors?
Start with Queries to learn how to ask these questions, then use Visualizations and Dashboards to present the answers.