Free MIT core · Aurora Meter Pro from $99/mo per app
Aurora Meter
Laravel Cashier + OpenMeter, for Phoenix. Real-time usage metering, plan
entitlements, and Stripe billing. Count, gate, and bill
on the BEAM: an ETS hot path that flushes to Postgres and adds up across every node
in your cluster.
Free MIT core · track/2
lib/my_app/reports.ex
Live
# count usage: an ETS increment, flushed to PostgresAuroraMeter.track(org, :ai_generations)
# read it back, live, for the UIAuroraMeter.usage(org, :ai_generations)
#=> %{used: 7_420, limit: 10_000}
org_acmeupgrade_prompt→ shown · plan :pro → :scale
Metered events
12:04:31Acme Corpai_generations+3
12:04:29Globexapi_calls+128
12:04:27Initechexports+1
12:04:24Umbrellaai_generations+7
stripe Billing Meters
Synced with Stripe
1,240,318
events reported this period
ai_generations✓ meter_event
api_calls✓ meter_event
exports✓ meter_event
MRR
$19,072
▲ +11% this month
Metered revenue
$4,210
▲ +23% overage
Invoices paid
312
Stripe, this period
Metered usage by month
Feb
Mar
Apr
May
Jun
Jul
Invoice paid · Acme Corp · $412.00
~5.5M increments/secPersisted to PostgresCluster-wide countersStripe-ready
Increments per second, in ETS
~5.5M
Persisted to Postgres
Every 5s
Counters across your cluster
One total
Core licence
MIT
Built on
Phoenix
Elixir
LVLiveView
PostgreSQL
Stripe
Tailwind
How it works
From mix.exs
to billed in four steps.
The free core counts and gates, persists to Postgres and sums across nodes. Add Aurora
Meter Pro when you want Stripe to charge for it.
01
Add the dependency
Pull in the free MIT core from Hex. Pro is a drop-in add-on when you need billing.
step 01
def deps do
[
{:aurora_meter, "~> 0.3"}
]
end
02
Declare your plans
A compile-time DSL, validated at compile time. Hard caps, metered overage, and boolean capabilities all live in one place.
step 02
defmoduleMyApp.PlansdouseAuroraMeter.Plans
plan :freedo
limit :ai_calls, 100, :hardend
plan :prodo
metered :ai_calls, included: 10_000, unit_price: 1
feature :priority_support, trueendend
03
Start it in your tree
One child. It validates config at boot and starts the metering runtime.
step 03
children = [
MyApp.Repo,
{Phoenix.PubSub, name: MyApp.PubSub},
AuroraMeter,
MyAppWeb.Endpoint
]
04
Count, gate and bill
Three calls. `track` counts, `with_quota` gates-runs-meters atomically, and the LiveView components render live usage. `org` is your tenant: any string or id for the customer, or your own struct via a small `AuroraMeter.Tenant` module.
step 04
# count usageAuroraMeter.track(org, :ai_calls)
# gate + run + meter in one atomic stepAuroraMeter.with_quota(org, :ai_calls, fn ->
generate_report()
end)
step 01 · Add the dependency
def deps do
[
{:aurora_meter, "~> 0.3"}
]
end
step 02 · Declare your plans
defmoduleMyApp.PlansdouseAuroraMeter.Plans
plan :freedo
limit :ai_calls, 100, :hardend
plan :prodo
metered :ai_calls, included: 10_000, unit_price: 1
feature :priority_support, trueendend
step 03 · Start it in your tree
children = [
MyApp.Repo,
{Phoenix.PubSub, name: MyApp.PubSub},
AuroraMeter,
MyAppWeb.Endpoint
]
step 04 · Count, gate and bill
# count usageAuroraMeter.track(org, :ai_calls)
# gate + run + meter in one atomic stepAuroraMeter.with_quota(org, :ai_calls, fn ->
generate_report()
end)
The free core counts and gates. Pro is the revenue and operations layer on top: Stripe
billing sync, metered usage reported to Stripe Billing Meters, hosted dashboards,
historical rollups, quota alerts and reconciliation.
7
complete Phoenix codebases extracted from products that already shipped: accounts,
Stripe payments, email, admin and SEO built in. Buy one outright or take the whole
catalogue with the Builder Pass. Full source, commercial licence, no subscription.
A fully-featured blog template with admin panel, markdown support, SEO optimization, and responsive design. Legacy shelf: stable, maintained for security fixes, honestly priced.
Agentic data-analysis starter: chat with your PostgreSQL data through a policy-enforced, read-only SQL boundary with adversarial tests, MCP integration, and local-model support via Ollama (boots fine without it). Built for teams shipping AI features on their own data.
AI document workspace starter: upload PDFs (10 MB free / 80 MB pro in the demo plans) and chat with them through a provider-agnostic AI boundary (OpenAI or deterministic fake for dev), with tenant-isolated storage, a tested deletion lifecycle, and an interactive viewer. AI answers vary by model and need human validation. The consolidated successor to AI Template and PDFAi.
The whole catalogue plus everything we release next, with lifetime updates and
commercial use on unlimited projects. Downloads land in your account instantly.
The free core installs in one dependency. Pro starts with a 14-day trial and bills through Stripe when you are ready. Need the
rest of the app too? Start from a template.