⚡ ⚡ Learn how Investing.com uses Jitsu to move data faster

Audience analytics for publishers, on reader events you own

Ask what readers did before they subscribed, and the answer sits in three systems: the analytics tool, the paywall and billing. None of them holds all three sets of events in one table, so the answer is three exports joined by hand.

Jitsu is an MIT-licensed event pipeline. It collects reader events from your website, apps and billing backend, runs JavaScript functions you write on them in transit, and loads them into your warehouse, alongside destinations such as Mixpanel, Google Ads and Meta Ads.

TL;DR

  • Reader events land in one events table in BigQuery, ClickHouse, Snowflake, Redshift or Postgres, and a ClickHouse warehouse comes with every Jitsu Cloud workspace.
  • Article metadata, URL clean-up and consent checks are functions you write once and attach to each connection that needs them, instead of shipping them in every app release.
  • Billing sends subscriptions server-side, and Google Ads and Meta receive only the consented conversions.
  • Pricing follows active events: Free covers 200,000 a month, and Business is $99 a month for 2M.

What publishers run through Jitsu

Reader events in your own warehouse

A function looks each article up in your CMS and writes its section and author onto the event, so editorial reporting runs on your own table instead of an analytics export. The function and the engaged-reading SQL are on the reader data warehouse page.

Which reading leads to a subscription

Until a reader logs in, everything they read sits under an anonymous ID. Once the billing system reports the subscription, a query in the warehouse ties it to the articles, paywalls and newsletters that came before, and only readers who consented to advertising are reported to Google Ads and Meta. Subscription analytics walks through the billing call, the consent function and the reading-history query.

Counting the readers your analytics misses

Ad blockers hide page views from browser analytics, and Safari's 7-day cookie cap splits a reader who returns after more than a week into a new one. A custom domain, on the Business and Enterprise plans, moves the script onto your own subdomain. Serving the anonymous ID from your own web server keeps returning Safari readers on one ID, and a separate measurement shows, browser by browser, how many page views never reached your analytics. Setup and query: server-side and first-party tracking.

Publishers on Jitsu

Investing.com, a financial news and market data publisher, sends 5 billion events a month through Jitsu from its website, Android app and iPhone app into Google BigQuery, Google Ads and Mixpanel.

Events publishers send

EventEmitted fromWhy it matters
pageBrowser, Jitsu scriptArticle views with article_id, the base of content metrics
screenApps, through Segment's librariesApp reads in the same table as web
article_engagedBrowser, appEngaged seconds and scroll depth, once per page view
video_play_startedBrowser, appVideo starts; never sent to ad platforms
paywall_shownBrowser, appMeter and paywall impressions
newsletter_subscribedBrowserRegistration without a paywall
signed_up + identifyBrowser, appLinks the anonymous reader to an account
subscription_startedBilling backendThe conversion ad spend is judged on
trial_convertedBilling backendFirst paid charge after a trial
subscription_canceledBilling backendChurn reasons, warehouse only
page_renderedServer or edgeServer-side count for measuring blocker loss

All 34 events, with property types and PII handling: media tracking plan (CSV), no form.

How the pipeline is laid out

Publisher event pipeline: sources, Jitsu functions per connection, warehouse and live destinations

Websites run Jitsu's JavaScript library, which uses the same track, page and identify calls as Segment's analytics.js, and mobile apps use Segment's open-source libraries, configured to send to Jitsu. The billing backend sends server-to-server events over the HTTP API.

Each source-to-destination connection runs its own chain of functions. A regional publisher with a metered paywall, for example, sends web and app events to BigQuery and Mixpanel, and billing events to BigQuery, Google Ads and Meta Ads.

Where it runs

OptionWhat it isPlan
Jitsu CloudHosted by Jitsu in the United StatesFree, Business, Enterprise
Private CloudA single-tenant deployment on your or Jitsu's dedicated GCP or AWS sub-account, managed by Jitsu. Servers are not shared with other customersEnterprise
On PremJitsu deployed on your infrastructure, on any cloud provider or your own serversEnterprise
Open sourceSelf-hosted under the MIT license, on Kubernetes with the Jitsu operatorFree

SOC 2 and the DPA are on the security page.

What it costs

An event counts once when it reaches at least one destination, whether it reaches one or five, and that count is the bill. Captured events cost nothing, and an event a function drops is free unless the function called fetch before dropping it.

Active events a monthPlanPrice
Up to 200,000Free$0
2,000,000Business$99 a month
5,000,000Business$219 a month
20,000,000Business$819 a month

Business adds $40 for each 1M active events past 2M, and Enterprise pricing is custom. Segment bills per monthly tracked user, which counts every anonymous ID never tied to a user ID; your own events-per-reader ratio comes from a query on the reader data warehouse page, and Jitsu vs Segment works the published prices.

Questions people ask

Does Jitsu work with dbt? Yes. Declare the events table as a dbt source and model on it like any other table. Every row carries message_id and a timestamp, so incremental models can filter on timestamp; ClickHouse models should select with FINAL to collapse duplicates.

Can Jitsu run next to Segment during a comparison? Jitsu's plugin for Segment's analytics.js, or a Segment Webhooks destination pointed at Jitsu, sends the same events to both.

How does consent work? The Jitsu JavaScript library takes your consent platform's choices through its privacy settings: send nothing until consent, drop user IDs, or strip the last octet of the IP address.

Get started with Jitsu

Pick the job above that matches your problem and start there, on the Free plan. Private Cloud and On Prem start with a conversation with the Jitsu team.

Subscribe to the Jitsu newsletter
Occasional product updates when we ship something worth knowing about. No spam.