Naar hoofdinhoud springen

Facturering per seconde, niet per bericht: CloudAMQP's facturen voor instantietijd verantwoorden als infra-COGS

Gepubliceerd 13 min leestijdMike ThriftMike Thrift
Facturering per seconde, niet per bericht: CloudAMQP's facturen voor instantietijd verantwoorden als infra-COGS
Op deze pagina

Je CloudAMQP-plan zegt $99 per maand, maar de factuur zegt $82,33, en volgende maand zegt hij $114,07, en je hebt niets veranderd behalve op een dinsdag een instantie vergroot. Er is niets mis. CloudAMQP verkoopt geen berichten. Het verkoopt instantietijd per seconde, factureert een maand achteraf en pro-rata't elke planwijziging tot op de exacte seconde waarop die plaatsvond. De stickerprijs is een snelheidslimiet, geen belofte. Totdat je boekhouding de factuur behandelt als een meterstand in plaats van een abonnement, zullen je infrastructuurkosten afdrijven, zullen je overlopende posten ontbreken en zal je brutomarge stilletjes het verschil absorberen.

Dit bericht legt uit hoe CloudAMQP daadwerkelijk meet en factureert, hoe realistische facturen eruitzien, waarom de productiebroker thuishoort in de kostprijs van verkopen, en hoe je facturen voor instantietijd verantwoordt zodat elke dollar in de juiste rekening landt.

Hoe CloudAMQP meet: tijd, niet berichten​

CloudAMQP is beheerde RabbitMQ- en LavinMQ-hosting, gerund door 84codes. Je kiest een broker, een plan en een regio, en je krijgt een instantie of een cluster. Het factureringsmodel volgt de instantie, niet het verkeer dat erdoorheen stroomt, wat het tegenovergestelde is van messaging-services per verzoek waarbij de payloadgrootte de rekening bepaalt. Hier zijn de twee vragen die je factuur bepalen hoe groot een instantie was die je liet draaien en voor hoeveel seconden.

Gedeelde plannen hebben quota's, dedicated plannen hebben capaciteit​

De gedeelde multi-tenant plannen zijn de enige plek waar berichtaantallen überhaupt voorkomen. Loyal Lemming is gratis met een maandelijks quotum van 2 miljoen berichten en 40 verbindingen, en Elegant Ermine kost $19 per maand met een quotum van 20 miljoen berichten en 200 verbindingen. Deze zijn geschikt voor ontwikkeling, prototyping en hobbyprojecten. Het quotum is een plafond, geen meter: je betaalt niet per bericht erbinnen.

Dedicated plannen laten het tellen van berichten volledig vallen. Je krijgt je eigen broker of een multi-AZ cluster ervan, en elk dedicated plan draait dezelfde engine op dezelfde snelheid. Je kiest een tier op basis van hoeveel je systeem vasthoudt: verbindingen, queues en opgeslagen berichten. De single-node LavinMQ-ladder loopt van Passionate Puffin op $49 per maand via Playful Penguin op $99, Lively Lynx op $199 en Wild Wolverine op $499, met grotere tiers daarboven. Clustervormen met één, drie en vijf nodes ruilen prijs voor beschikbaarheid. Datatransfer is inbegrepen binnen een fair-use-toelage, die de prijspagina definieert als gratis transfer gelijk aan 30 procent van je teambesteding per maand. Overschrijd je die, dan krijg je 30 dagen om de overage op te lossen voordat verkeerskosten op latere facturen verschijnen.

De praktische consequentie: je berichtvolume kan verdubbelen zonder de factuur een cent te verplaatsen, zolang de instantie nog steeds de verbindingen, queues en backlog vasthoudt. Omgekeerd herprijst een upgrade naar een grotere tier omdat één limiet je kneep elke seconde vanaf dat moment, zelfs als het verkeer vlak is. Capaciteitsplanning, niet verkeersprognose, is de vaardigheid die deze rekening beheerst.

Elke seconde telt, en de rekening komt een maand laat​

Alle plannen worden per seconde gefactureerd. Aan het einde van elke maand weerspiegelt je rekening de exacte tijd dat elke instantie beschikbaar was voor gebruik, dus een instantie die midden in de maand is aangemaakt, verwijderd of vergroot, levert een pro-rata-kostenpost op in plaats van een volle of nul maand. Je kunt op elk moment van plan wisselen zonder downtime, en autoscaling tussen tiers heeft hetzelfde effect: elk segment van de maand wordt geprijsd tegen de tier die gedurende die seconden actief was.

Betaling gebeurt de maand na levering. CloudAMQP's eigen FAQ zegt het duidelijk: facturering is pro-rata, klanten betalen alleen voor de tijd dat de service voor hen beschikbaar was, en je ontvangt je eerste factuur aan het begin van de komende maand in plaats van bij aanmelding. Dat ritme van achteraf factureren is het allerbelangrijkste feit voor je boekhouding. Er is geen kostenpost bij de afsluiting om tegen af te boeken, wat betekent dat elke maandeinde-afsluiting een overlopende post nodig heeft voor niet-gefactureerde brokertijd, en elke factuur een correctie tegen de schatting van vorige maand.

Nog twee factureringsmechanismen zijn van belang. Ten eerste vooruitbetaling: je kunt één tot meerdere maanden vooruit betalen, en een vooruitbetaling is een jaar geldig voordat ze verloopt. Een klant op een $99-plan kan twaalf maanden vooruit betalen en een jaar lang maandelijkse kosten overslaan, en het krediet dekt elk plan op de account, dus een tweede instantie toevoegen put het sneller uit. Dat is een vooruitbetaald actief met een lont van een jaar, geen kosten op het moment van betaling. Ten tweede is er geen jaarlijkse factuur. Omdat klanten zo vaak van plan wisselen, biedt CloudAMQP geen jaarlijkse facturering; vooruitbetalingskrediet is het substituut. Als je inkoopproces een jaarlijkse factuur of afzonderlijke inkooporders per abonnement vereist, plan hier dan vroeg omheen: afzonderlijke inkooporders vereisen afzonderlijke accounts zodat de abonnementen apart worden gefactureerd, en factureringsvoorwaarden lopen via hun factureringsteam in plaats van de self-service kaartstroom.

Marketplace-instanties worden via het platform gefactureerd, niet via CloudAMQP​

Als je hebt ingericht via Heroku add-ons of de AWS-, Azure- of GCP-marketplaces, verschijnt de besteding helemaal niet op een CloudAMQP-factuur. Ze landt op de platformfactuur, Heroku's maandelijkse factuur of de kostenspecificatie van je cloudprovider, onder de naamgeving van dat platform. Dit is de meest voorkomende verantwoordingskloof voor teams die brokers op twee plekken draaien: de directe factuur wordt netjes verantwoord terwijl de marketplace-tweeling zich verbergt in een grotere cloudfactuur, vaak geclassificeerd als generieke hosting. Beslis één keer waar elke instantie wordt gefactureerd, en zorg dat je maandeinde-uitdraai zowel het CloudAMQP-controlepaneel als elke marketplace dekt waarin ze zich kan verbergen.

Wat dit kost bij realistische vormen​

Lijstprijzen zijn alleen zinvol vermenigvuldigd met seconden, dus hier zijn drie vormen opgebouwd uit gepubliceerde single-node-prijzen.

Een hobbyproject draait staging op de gratis Lemming-tier en een Puffin op $49 voor een kleine productieservice. De brokerregel is $49 per maand, vlak, en de enige verantwoordingstaak is bevestigen dat de instantie de hele maand draaide.

Een groeiend SaaS-team draait productie op een Penguin op $99 en staging op een Ermine op $19. Midden in de maand dwingt queue-diepte een upgrade af: staging op Puffin-niveau blijft staan, maar productie gaat van Puffin op $49 naar Penguin op $99, tien dagen in een maand van dertig dagen. Het productiebeen prijst als tien dagen op de lagere tier plus twintig dagen op de hogere, ruwweg $16,33 plus $66,00, of ongeveer $82,33, en staging voegt $19 toe. Het factuurtotaal komt uit op ongeveer $101,33 voor een opzet waarvan de stickerprijzen optellen tot $118. Volgende maand, met Penguin de hele periode actief, factureert dezelfde opzet de volle $118. Wie beide maanden de stickerprijs boekt, overdrijft de eerste maand en onderschat niets in de tweede, wat precies de afwijking is die facturering per seconde bestraft.

Een grotere organisatie draait een productiecluster met drie nodes plus staging en een vooruitbetaald kredietsaldo. Het cluster vermenigvuldigt het single-node-tarief, planwijzigingen tijdens incidentrespons voegen pro-rata-segmenten toe, en de vooruitbetaling absorbeert het totaal zonder kaartbetaling. De factuur specificeert nog steeds elke instantie en elk segment, en de kredietafname is het te boeken getal, niet de nul op het kaartafschrift.

Geen van deze vormen omvat berichtaantallen. Als je financiële model verwachte berichten vermenigvuldigt met een tarief per bericht, modelleert het een andere leverancier. Modelleer instantietiers vermenigvuldigd met verwachte seconden, en herzie de tieraanname telkens wanneer groei van verbindingen of queues een formaatwijziging forceert.

Waarom de productiebroker COGS is, geen overhead​

Een berichtenbroker die ordergebeurtenissen, jobdispatches en klantmeldingen in productie verwerkt, is een directe kost van het leveren van je product. Het schaalt mee met het bedrijf, het houdt op ertoe te doen zodra er niets verkoopt, en het zit van nature boven de brutomargelijn naast compute, database, opslag en bandbreedte voor productie. De SaaS-brutomargepraktijk past een directe-kostentoets toe: besteding die bestaat om klanten in productie te bedienen is kostprijs van omzet, terwijl besteding die het bedrijf bouwt, verkoopt of bestuurt bedrijfskosten zijn. Klassieke SaaS draait op deze basis 75 tot 85 procent brutomarge, waarbij infrastructuurintensieve bedrijven lager draaien, en investeerders benchmarken je tegen die banden.

Pas de toets instantie voor instantie toe, want één CloudAMQP-account bevat meestal meerdere. Productiebrokers die klantworkloads dragen, gaan naar de kostprijs van verkopen. Staging-, loadtest- en ontwikkelaarssandbox-instanties vallen in onderzoek en ontwikkeling of algemene overhead. De gedeelde Ermine die je stagingomgeving draait is geen COGS alleen omdat hij een factuur deelt met de productie-Penguin. De factuur voegt ze samen, dus splits hem elke maand per instantie, met behulp van de per-instantie-specificatie van het controlepaneel. Teams die de splitsing overslaan, dwalen meestal in de flatterende richting af, begraven infrastructuur in overhead en rapporteren een marge die hun unit-economics niet kunnen verdedigen. Een due-diligence-onderzoek herclassificeert het in een middag, en de herziene marge is nooit de hogere.

De boekhoudnormen ondersteunen dit. Onder ASC 350-40 is een beheerde hostingregeling waarbij de leverancier de software draait een servicecontract, en de kosten worden ten laste gebracht zoals ze zich voordoen over de gebruiksperiode. Implementatiewerk kan een eigen behandeling hebben, maar de maandelijkse kosten voor instantietijd zijn een periodekost, nooit een geactiveerd actief. Vooruitbetalingen zijn het spiegelbeeld: cash vandaag eruit, kosten later, dus de vooruitbetaling staat als vooruitbetaald actief en komt vrij in kosten naarmate het krediet wordt verbruikt. De vooruitbetaling als kosten boeken op de betaaldag overdrijft de betaalmaand en onderschat elke maand die het krediet dekt.

Boek het nettobedrag dat je daadwerkelijk betaalt. De gratis Lemming-tier is gratis capaciteit, geen omzet, dus er is niets op te hogen. Wil je inzicht in wat de workload zonder zou kosten, volg dat dan in je metrieken en houd het grootboek op cashkosten.

Hoe je het boekt zodat de factuur wordt verantwoord​

Geef de broker zijn eigen kostprijs-van-omzet-rekening in plaats van hem te vermengen met generieke cloud- of softwarebesteding. Een speciale rekening zoals message broker laat je de productiebesteding van de maand delen door de instantieseconden van de maand en je werkelijke kost per capaciteitseenheid zien, wat het getal is dat je vertelt of een formaatwijziging ruimte opleverde of gewoon een grotere rekening.

Omdat facturering een maand achteraf loopt, is het ritme opbouwen, dan afwikkelen, dan corrigeren. Schat het brokerdeel uit instantietiers en seconden bij de afsluiting, splits productie van staging, en corrigeer naar de factuur wanneer die binnenkomt. Hier is een volledige cyclus voor een maand waarin productie $82,33 draaide na een formaatwijziging halverwege de maand en staging $19,00 toevoegde:

2026-01-01 open Assets:Cash:Operating USD
2026-01-01 open Assets:Prepaid:CloudAMQP USD
2026-01-01 open Expenses:CostOfSales:Message-Broker USD
2026-01-01 open Expenses:Research:Staging-Infra USD
2026-01-01 open Liabilities:Accrued:CloudAMQP USD
 
2026-01-31 * "CloudAMQP" "Januarischatting, prod Puffin-naar-Penguin formaatwijziging plus Ermine staging"
  Expenses:CostOfSales:Message-Broker  82.33 USD
  Expenses:Research:Staging-Infra  19.00 USD
  Liabilities:Accrued:CloudAMQP  -101.33 USD
 
2026-02-04 * "CloudAMQP" "Januarifactuur vereffend, schatting was exact"
  Liabilities:Accrued:CloudAMQP  101.33 USD
  Assets:Cash:Operating  -101.33 USD

Wanneer een vooruitbetaling de maand dekt, trekt het vereffeningsbeen het vooruitbetaalde actief aan in plaats van cash. Registreer de vooruitbetaling als actief wanneer je betaalt, en geef dan het verbruik van elke maand vrij:

2026-01-05 * "CloudAMQP" "12 maanden Big Bunny vooruitbetalen op 99 per maand"
  Assets:Prepaid:CloudAMQP  1188.00 USD
  Assets:Cash:Operating  -1188.00 USD
 
2026-01-31 * "CloudAMQP" "Januariverbruik tegen vooruitbetaling, prod plus staging"
  Expenses:CostOfSales:Message-Broker  82.33 USD
  Expenses:Research:Staging-Infra  19.00 USD
  Assets:Prepaid:CloudAMQP  -101.33 USD

Volg de eenjarige vervaldatum van de vooruitbetaling zoals je elk use-it-or-lose-it-krediet volgt. Een verlopend saldo is een echt verlies, en het verdient een agendamelding, geen ontdekking tijdens de opruiming van volgend jaar. Als je je boekhouding in platte tekst bijhoudt, sluiten de kostentracking-patronen in de documentatie natuurlijk aan op een broker-splitsing per instantie.

Eén classificatievalkuil: een toeslag voor datatransfer-overage en een grotere tier zijn beide brokerkosten, maar ze betekenen verschillende dingen. De tierwijziging is geplande capaciteit; de overage is ongepland verbruik voorbij de fair-use-toelage. Boek beide op de brokerrekening, maar tag of memo de overage apart zodat de maand waarin hij verschijnt leest als een uitzondering in plaats van een nieuwe basislijn.

Vijf controles die instantietijd eerlijk houden​

Facturering per seconde beloont aandacht en bestraft instellen-en-vergeten. Deze vijf controles vangen de gangbare afwijkingen op.

1. Verantwoord per instantie, niet per factuur​

Koppel elke factuurregel aan een instantie die je herkent, op een tier die je hebt geautoriseerd, voor seconden die ruwweg de maand dekken. Een regel voor een instantie die niemand bezit is meestal een vergeten stagingbroker of een loadtest-cluster van drie sprints geleden dat nog per seconde factureert. Verwijder meedogenloos; er is hier geen beloning voor inactieve capaciteit.

2. Log elke formaatwijziging met zijn tijdstempel​

Elke planwijziging splitst de maand in geprijsde segmenten. Houd een lichtgewicht wijzigingslog bij, zelfs een gedeelde notitie met datum, instantie, oude tier en nieuwe tier, en verantwoord de segmenten van de factuur ertegen. Zonder het log is een samengevoegd totaal zoals $82,33 onverifieerbare rekenkunde. Met het log klopt de wiskunde in een minuut.

3. Haal marketplace-besteding in dezelfde review​

Als een instantie via Heroku of een cloud-marketplace factureert, voeg die regels dan toe aan dezelfde maandelijkse review als de directe factuur. Noem de marketplace in de narratie van het grootboek zodat de reviewer van volgende maand niet zoekt naar een CloudAMQP-regel die nooit zal bestaan. Dit is ook waar dubbele facturering zich verbergt: een instantie die van marketplace naar directe facturering is gemigreerd, draait soms een paar dagen dubbel.

4. Let op de fair-use-transfertoelage voordat ze factureert​

Datatransfer is inbegrepen tot 30 procent van de teambesteding, met een oplossingsvenster van 30 dagen na een overage voordat toeslagen op latere facturen verschijnen. Behandel de eerste overage-melding als de controle, niet de toeslag. Controleer welk verkeer van welke instantie piekte, bevestig dat het legitieme groei is en geen retry-storm of een praatzieke consumer, en los het binnen het venster op. Een retry-lus die over een cluster uitwaaiert kan een rustige maand omzetten in een transfer-overage zonder enige tier te wijzigen.

5. Automatiseer de uitdraai​

Het controlepaneel toont elke factuur, en de klant-API stelt factuuracties beschikbaar naast instantiebeheer, dus de maandeinde-uitdraai hoeft geen mens te zijn die door een console klikt. Script de download, parse de per-instantie-regels, en vergelijk met je wijzigingslog en je overlopende post. De schatting van de overlopende post zelf kan uit dezelfde data komen: tiertarieven vermenigvuldigd met verstreken seconden, wat beter is dan gissen op basis van het totaal van vorige maand wanneer er halverwege de cyclus een formaatwijziging was.

Maandeinde-checklist voor brokerkosten​

Sluit de cirkel elke maand op dezelfde manier zodat de getallen betrouwbaar blijven:

  1. Lijst elke instantie en elk cluster op, direct en via marketplace gefactureerd, en bevestig dat elk nog steeds een eigenaar en een doel heeft.
  2. Verantwoord elke factuurregel tegen een instantie, tier en tijdssegment, met je formaatwijzigingslog voor samengevoegde totalen.
  3. Splits productie van staging- en sandboxbesteding, en bevestig dat alleen productie in de kostprijs van verkopen landde.
  4. Corrigeer de overlopende post van vorige maand naar de vereffende factuur en draag de afwijking over naar de schatting van volgende maand.
  5. Schrijf een eventuele vooruitbetaling af op basis van werkelijk verbruik, en controleer het resterende saldo tegen de eenjarige vervaldatum.
  6. Bevestig dat het transfergebruik binnen de fair-use-toelage bleef, en los elke overage-melding op binnen het venster van 30 dagen.
  7. Bevestig dat elke gedurende de maand aangemaakte instantie de juiste omgevingstag erfde en vanaf dag één in de juiste rekening landde.

Haal vandaag de CloudAMQP-factuur van deze maand op en koppel elke regel aan een instantie die je kunt benoemen. Als elke regel netjes overeenkomt, is je brokerboekhouding eerlijk. Als dat niet zo is, heb je zojuist ofwel een vergeten instantie gevonden die nog per seconde factureert, ofwel een marketplace-tweeling die zich in een andere factuur verbergt, en elke ontdekking betaalt de review terug.

Bron: https://beancount.io/nl/blog/2026/11/10/cloudamqp-instance-time-billing-infra-cogs-reconciliation-guide

Gepubliceerd: 10 november 2026