Energy receipts

Every request and every workload run on Joule Cloud produces a receipt. The receipt is a small JSON document carrying what ran, where it ran, how much energy it consumed, and a cryptographic signature so an auditor can confirm nothing was edited after the fact.

The bill is the receipts. The receipt is the audit trail.

What a receipt looks like

{
  "receipt_id": "rcpt_018a3c…",
  "workload": {
    "id": "chatcmpl_3a91…",
    "kind": "ml-inference"
  },
  "silicon": {
    "vendor": "nvidia",
    "model": "H100 SXM5 80GB",
    "operator": "Nebius",
    "region": "eu-fi"
  },
  "execution": {
    "start_unix_ns": 1782219834000123456,
    "duration_ms": 312
  },
  "energy": {
    "total_joules": 0.31,
    "peak_watts": 547,
    "method": "nvidia-smi-power-draw",
    "method_confidence": "measured-direct"
  },
  "carbon": {
    "gco2eq_total": 0.07,
    "grid_intensity_gco2_per_kwh": 110
  },
  "operator": {
    "legal_entity": "Nebius B.V.",
    "dc_pue": 1.15,
    "dc_ref_renewable_share": 0.99
  },
  "verification": {
    "signature_algo": "ed25519",
    "signature": "9c6563f6a7d4…",
    "tier": "L2"
  }
}

The fields, briefly

SectionWhat it tells you
workloadWhat ran — the kind, the id, your custom labels
siliconWhich chip on which node served it
executionWall-clock start and duration
energyJoules consumed, plus how we measured them and how confident we are. See What is a joule, here
carbonCO₂eq derived from the local grid mix at the moment the request ran
operatorThe legal entity that operates the data centre, plus published PUE / renewable share
verificationCryptographic signature over the entire receipt

How signatures work

Receipts are signed with ed25519 using a FROST 3-of-5 threshold key (the operator's group public key is published in the console under Security). The signing layer is a Rust CLI based on the IETF FROST standard, so the signing key is never reconstructed in any single process — a quorum of independent signers produces each signature.

To verify a receipt outside the console: pull the operator's public key from the portal, take any signed receipt JSON, and run the verifier:

jc verify --key signer_pubkey.hex receipt.json
# Verified: 1 passed, 0 failed

Where receipts live

What you can do with them

The point of receipts is to make the bill defensible — to you and to anyone you have to explain the bill to.

Privacy

Receipts contain operational metadata (joules, silicon, region) but never your payload. We do not log prompt content or response content into the receipt. If you supply a X-Customer-Tag header with each request, that tag appears on the receipt and you can use it to attribute receipts to your own end-customers; nothing else is recorded.

Next

To see how the silicon-side energy comes to be in the receipt, read What is a joule, here. To see how the silicon got picked, read Routing & placement.