haqlLabs

haql-45q · 45Q MRV packager

A credit claim is a story. haql-45q makes it checkable.

45Q pays you for CO₂ actually stored. But the credit is only as good as the mass balance behind it — and a vented tonne you forgot is a claim that dies in review. haql-45q reconciles the year, prices the tonnes at the statutory rate for your construction year, watches the Subpart RR clock, and packages everything a reviewer would want to see.

Run it yourself: download the standalone binary — a directory in, a certification pack out. Fully offline, deterministic, same rules every year.

Read the public guide: what it does, what it checks and what it does not do →

one command, one reporting year
# generate sample inputs (demo site + wells + 12 months)
haql-45q demo

# audit + price the year
haql-45q demo_45q --no-open -o cert-pack

# result
rows=30 facilities=1 issues=6
  credits $8,399,700.00 over 98,820.00 mt
  fingerprint sha256=5e8c5b6f…
  cert-pack.json → cert-pack/cert-pack.json
  cert-pack.html → cert-pack/cert-pack.html
  credits.csv   → cert-pack/credits.csv

# Subpart RR due (40 CFR §98.167): 2027-03-31

Credits.csv and the JSON parse cleanly; the HTML reads in any browser and prints for the file.

What it is

Four CSVs and a config in. A credit schedule and evidence trail out.

No accounting system integration. No database. Just the records you already keep, checked against the physics of the storage site.

Goes in

Capture, injection, monitoring and lab CSVs plus a facility config: storage formation, construction and placed-in-service dates, disposition (storage / utilisation / DAC), and the MRV plan. Missing files are treated as gaps, not guessed around.

Comes out

Credits priced year by year at the statutory rate for the construction year, a Subpart RR due-clock, and a certification pack (JSON + HTML) with the full mass balance, storage report, findings and credit schedule — plus a credits.csv you can audit.

Why you need it

The credit is the easiest part. Proving it is the hard part.

Calculating $85/tonne is a multiplication table. Surviving review — where a reviewer asks exactly what you claim, from exactly which wells, into exactly which formation — is where claims come apart.

The vented tonne you forgot

A monitoring quarter records a leak event. Nobody carries it into the balance. The stored number is overstated by exactly the emissions you recorded — and the reviewer finds it in one line.

The formation mismatch

Injection recorded into a formation that is not the storage formation in your filing. It is either a typo in the export or a fundamental problem with the claim — a reviewer will ask which.

The incomplete year

One monitoring quarter missing. One lab quarter missing. The claim is not wrong — it is incomplete, which is close enough to a rejection for most purposes.

The wrong rate

Construction before the Inflation Reduction Act means an inflation-adjusted rate table — not the full $85. Use the wrong table and the whole schedule restates. Nobody wants that letter.

Without haql-45q

The year is summed in a spreadsheet. Stored = injected − emitted. The reviewer asks for the formation, the quarters, the rate basis. The supporting evidence is scattered across four exports and a folder of emails.

Every answer is a fresh search. Every search is a chance to be wrong.

With haql-45q

Six findings named before you file, the balance reconciled to the tonne, credits at the correct statutory rate, and a single certification pack that answers the questions before they are asked.

The claim arrives looking like it was built to be audited.

What it actually catches

Eight ways a claim is weaker than it looks.

The full check list
  • Mass-balance gaps — captured CO2 that did not end up injected or vented, beyond a 5% tolerance (RQ010)
  • Emissions eating the storage claim — vented tonnes that make stored tonnes negative (RQ011)
  • Formation inconsistencies — injection recorded outside the storage formation in the config (RQ101)
  • Depth unreported — injection rows carrying no depth for the storage interval (RQ103)
  • Missing quarters — a monitoring or lab gap that makes the year's claim incomplete before you file (RQ201, RQ203)
  • Credit-window violations — construction after the Dec 31 2032 deadline (RQ231), or reporting outside the 12-year window (RQ232)
  • Rate integrity — pre-IRA construction uses the inflation-adjusted table, never a guessed number (RQ301)
  • The reporting clock — Subpart RR annual report due date computed per 40 CFR §98.167(b), so the deadline is in the output, not in someone's calendar
  • Signed evidence trail — --attest --bundle inspection.zip signs the certification pack (Ed25519 over the pack hash and the findings root) and packages pack + credits + attestation into one byte-reproducible inspection bundle, so the "was this edited?" question dies before review

Same design stance as the rest of the suite: read-only, offline, deterministic, traceable to the row — and provably unedited, with the same key-hash verification a regulator-friendly audit expects.

Pricing

Priced against a restated claim, not a seat count.

One restated credit schedule costs more than a year of a license — in engineering hours, amended filings, and a conversation nobody wants to have. haql-45q is the cheap insurance.

Sample check

Free

One year of records, on the house. No key, no seat limit, no card. You get the full balance and findings back.

Send me the CSVs

Team

$349/month

Annual commitment, up to 10 users, unlimited facilities and fields. Academic research and evaluation use needs no key.

On-premise

$1,750/month

Annual, per site, unlimited users on that site. Under most data-residency policy this is the premise, not a feature.

Evaluation: 30 days, no license key needed.

Next

Run a year through it today.

Email the four exports — anonymised if you prefer — and get the full balance, findings and credit schedule back at no cost.

kunleaz100@gmail.com