What you get for $9/month is not a pretty dashboard. It is a connection path that turns your website’s traffic, conversion, and revenue data into something an AI agent can query. But to get useful answers, you need to define events properly first and start by granting read-only access.

3-second summary
Install a roughly 2KB tracker Define key conversion events Connect the MCP URL Approve read-only access Ask AI about traffic, conversions, and revenue

What $9 buys is “queryable data,” not just an analytics screen

Open Analytics is designed to reduce everyday GA4 analysis work for small, straightforward sites. It handles pageviews, real-time visitors, acquisition sources, funnels, custom events, Core Web Vitals, and Stripe revenue attribution in one product, and also provides an MCP server and read API. Its public repository is licensed under AGPL-3.0, and you can self-host it.

The hosted Starter plan costs $9/month and includes 50,000 events per month and three sites. There is no free plan, but it offers a seven-day trial with no card required. Rather than charging separately by feature, the plan scales up according to usage and the number of sites.

$9/month
Starter monthly price
50K
Monthly event limit
About 2KB
Compressed asynchronous tracking script

The important unit here is not “visitors” but events. Pageviews and custom events both count toward usage, so indiscriminately adding automated events can use up 50,000 quickly even on a low-traffic site. In the first month, it is safer to track only pageviews and two or three conversions directly tied to the business, then check actual volume.

The default tracker does not leave a visitor identifier in cookies or browser storage. The server creates a one-way identifier from the IP address, site ID, date, and a coarse browser classification, and that value changes every UTC midnight. The original IP is not stored after identifier calculation and an internal geolocation lookup, while GPC signals are rejected by both the browser and collection server.

Do not conclude that “no cookies” automatically means you do not need a consent banner.

The maker says a banner is unnecessary in the default configuration, but regulators’ consent exemptions for analytics tools depend on several conditions, including purpose limitation and data-processing methods. If you also use advertising pixels or session tools, or add identification features, review the full site setup separately.

With MCP, dashboard lookups become agent tool calls

The one essential value for connecting is https://api.getopen.so/mcp. Enter this address in the connector settings of an MCP-compatible client, and an OAuth approval page opens in your browser. Instead of copying an API key into a chat window or settings URL, you review the app name and requested scopes, then approve access.

After connecting, the agent can read visitors, pages, acquisition sources, regions, devices, real-time status, and revenue summaries by period. For example, you can ask in one go: “Compare signup conversion rates for the last 7 days and the prior 7 days, and show the acquisition channels with the biggest changes,” instead of moving across several screens.

However, MCP is not an analytics model; it is a standard pathway for accessing analytics data. The official MCP documentation likewise describes it as a standard connection method between AI applications and data sources or tools. If event names, time periods, and conversion definitions are vague, the agent’s answers will be vague too.

Task Using only the dashboard Connecting an MCP agent
Weekly comparison Manually switch periods and reports Specify both periods and metrics in a sentence
Finding causes Review channel, page, and device tables one by one Ask consecutive questions across multiple breakdowns
Recurring reports Copy figures and explain them again Re-run the same question format
Control Rely on account roles Approve and revoke read/write scopes per connection

Permissions are divided into read and write. Read scopes cover sites, analytics, real-time data, and revenue summaries, while write scopes are approved separately for tasks such as funnels, events, widgets, and sharing. The agent is blocked from modifying site deletion, team members, API keys, billing, and domains. Connected apps can be revoked immediately in Account’s Connected apps, and records are kept of the connection and first use from new sources.

Start by approving read-only access.

Weekly summaries and explanations of anomalies do not require write permission. Add the relevant scope only when there is a real need to manage funnels or events, which limits the blast radius of mistakes. OAuth-based scope approval and token audience restrictions are also central to MCP’s permission model.

Before deleting GA4, understand why the two tools show different numbers

Open Analytics is a strong fit for environments with clear core questions, such as small content sites, landing pages, and early-stage SaaS products. For teams that want to quickly ask, “Where did they come from, what did they view, did they sign up, and did it lead to revenue?”, installation and reporting become simpler.

By contrast, organizations where persistent identification and a broad marketing ecosystem matter—such as ad-platform integrations, long-term user cohorts, or complex ecommerce schemas—should validate both tools in parallel rather than immediately remove GA4. Open Analytics’ anonymous visitor identifier changes daily, so by default it is not intended to track the same person across multiple days. The identify feature, which lets a site send a separate pseudonymous user ID, is available, but it is different processing from the default anonymous model, so privacy notices and internal policies should change as well.

Lower numbers than an existing analytics tool are not necessarily a problem either. Open Analytics states that it does not count GPC visitors and respects DNT by default, so totals may differ from cookie-based tools.

Replacement criterion: Do not force the two products’ total visitor counts to match. Instead, check whether acquisition trends for the same campaigns and whether key conversions occur are moving in the same direction. The purpose of analytics is not to reproduce numbers, but to reliably obtain the signals needed for decisions.

Install and connect an AI agent in 20 minutes

1. Create a site and install the tracker

Log in to Open Analytics, add the site name and domain, and get a tracking key in the form oa_pk_…. Run npx getopen init from your project folder to detect Next.js, React, Vue, Nuxt, SvelteKit, Remix, Astro, Gatsby, WordPress, or plain HTML and insert the snippet into the appropriate file. For manual installation, add the asynchronous script supplied by the dashboard to your site’s <head>.

2. Verify the first pageview and one key conversion

Open the deployed site yourself and confirm that the first visit appears in the realtime view. Then add an event attribute such as data-oa-event="signup" to the most important button. To compare button placement, add attributes such as data-oa-prop-section="hero" and data-oa-prop-section="pricing". Using both an HTML attribute and oa.track() for the same click can result in duplicate charges, so choose only one method.

3. Connect the MCP connector as read-only

In your AI client’s MCP or custom connector settings, enter Open Analytics as the name and https://api.getopen.so/mcp as the URL. On the browser approval screen, review and approve only the needed read scopes, such as site:read, analytics:read, and realtime:read. If your client accepts only stdio, you can use the documented npx mcp-remote https://api.getopen.so/mcp bridge.

4. Test with questions that reveal evidence, not just answers

A good first question is: “Compare visitors, signup events, and conversion rates for the last 7 days and the prior 7 days in a table, and state the period for each figure.” Then ask, “Separate and show the top acquisition sources and landing pages with the biggest changes.” If a number seems doubtful, check the same period in the dashboard and make sure each event corresponds to one actual button click.

5. Decide whether to replace it after one week

Run it alongside GA4 for about seven days and compare the direction of campaign acquisition, the timing of conversions, and missing events. Switch if it answers the needed questions consistently and projected monthly event volume fits the plan; if ad integrations or long-term user analysis are missing, it is more realistic to keep GA4 as a supporting tool.

If you want to dig deeper

Open Analytics: AI-Native Google Analytics alternative for the modern web — You can review the maker’s explanation of the product’s launch context, $9/month price, AGPL release, and MCP support. producthunt.com

Quick start | Open Analytics — The shortest installation guide, from creating a site to npx getopen init and verifying your first real-time event. getopen.so

MCP: connect an AI agent | Open Analytics — Check the MCP URL, OAuth approval, read/write scopes, and the menu for revoking connections. getopen.so

GitHub - OpenLabs-so/openanalytics: Open-source, privacy-first and cookieless web analytics with revenue attribution and an MCP server. — View the AGPL license, components, self-hosting requirements, and the actual source code. github.com

Authorization - Model Context Protocol — The official specification explaining why MCP needs OAuth approval and token audience restrictions. modelcontextprotocol.io