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 TypeWhat Is CapturedWhen It Fires
Page ViewsThe page URL, title, and referrerEvery time the user navigates to a new page or route
InteractionsThe action performed (click, submit) and the target elementWhen users interact with tracked elements on the page
ErrorsThe error type, message, and stack traceWhen 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
Focus your custom events on business outcomes and user milestones rather than low-level UI interactions. The automatic tracking already captures clicks and page views — custom events should capture the meaning behind those interactions.

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.

  1. 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.
  2. 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.
  3. 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.
  4. 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.

The data warehouse stores the complete event history with full detail. You can query events from any time period and drill down to individual events when investigating specific issues. There is no sampling or data loss in the pipeline.

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.