Latest / The Cloud Business Podcast with Fexingo: AWS, Azure, GCP, and Enterprise Infrastructure / Why Cloud Bills Now Charge for Git Commit Hooks
Transcript
- Lucas: So Luna, you know that eight percent line item on the last cloud invoice from the mid-size SaaS firm we were chatting about? Turns out it wasn't the new AI training jobs. It was git commit hooks. Luna: Git hooks. As in, the little scripts that run every time someone commits? That's a new one. Lucas: Exactly. And it's not just them. Over the past few quarters, the big three — AWS, Azure, GCP — have quietly moved hook execution from bundled runner capacity into a separately metered SKU. If you're running a serious CI/CD pipeline, that's a line item you might have glossed over. Luna: So they're charging for the compute behind every pre-commit and pre-push hook now? That feels like charging for the air in the tires. Lucas: At first glance, sure. But the unit economics are real. Each hook invocation usually consumes a few hundred milliseconds of CPU. When you have a few thousand developers, each committing multiple times a day, that adds up to millions of invocations a month. And the cloud providers have started itemizing that compute as a distinct resource. Luna: So what's the actual price? Like, per thousand calls or something? Lucas: Generally it's metered per execution, with tiered pricing. Think in the range of a fraction of a cent per hook run, but with volume discounts that kick in around a million invocations. For that SaaS firm, their hook suite — which includes custom policy checks, linting, and secret scanning — generated about 2.3 million invocations a month. That's roughly four hundred dollars a month just for hook compute. Not a fortune, but it's pure overhead. Luna: And that's what pushed their bill up eight percent quarter-over-quarter? Lucas: Right. Because they had also added a new policy as code layer that runs a heavier test — a commit-msg hook that validates conventional commit format and a pre-push hook that runs a full security scan. Each one takes a bit longer, so the metered CPU time went up. And the provider's new pricing model charges for that CPU time directly, not just as part of the runner's included capacity. Luna: So it's not a flat per-hook fee. It's actually computed based on how long your hooks run? Lucas: Exactly. The SKU is something like 'CI/CD hook execution units,' and you're billed per millisecond of compute. So a lightweight hook that just checks formatting might run for fifty milliseconds, while a security scan that pulls a dependency graph could take two seconds. The latter costs forty times more. Luna: Huh. That changes the calculus on what you even put in a hook. If a heavy scan is expensive, you might defer it to a later pipeline stage. Lucas: And that's exactly the kind of cost-aware design the cloud vendors are nudging you toward. They've published documentation that essentially says, 'Optimize your hook logic for execution time, or pay for the privilege.' Luna: So is this a cash grab, or is there a real cost behind it? I mean, they do have to run those containers. Lucas: Part of it is genuine pass-through: the compute, the storage for hook logs, the network for fetching dependencies. But there's also a pricing-power play. Once you're locked into a provider's CI/CD tooling, switching costs are high. So they can introduce a new metered component and you're likely to just absorb it. Luna: And they probably argue that it's transparent, right? You can see exactly how many hook executions you're paying for. Lucas: Yeah, they added usage dashboards that break down hook execution by repository and by user. For a finance team, that's great. For a developer, it's another thing to watch. But the real surprise is that this isn't just for managed CI services. Even if you're running your own runners on their VMs, the network egress and the storage for hook caches are now billed separately. Luna: So even self-hosted GitLab or Jenkins users are affected? Lucas: Not directly on the hook execution SKU, but indirectly. Because if your hooks pull from a container registry or push logs to object storage, those operations are metered. And the providers have started charging for the registry pulls that happen as part of hook initialization. So even if you're not on their managed CI, you're paying for the underlying infrastructure. Luna: That's sneaky. But I guess it's also a wake-up call to audit your hook usage. How do you even know what your hooks are doing? Lucas: First step: look at the provider's cost explorer or equivalent, filter by 'hook execution,' and see the breakdown. Most teams I talk to haven't actually looked at this metric. They just saw the total go up and blamed the new AI workloads. Luna: So, what's the fix? Do you just remove hooks? Lucas: You don't want to remove them entirely — they're your first line of defense for code quality and security. But you can be smarter. Consolidate multiple hooks into a single script that runs once, rather than firing three separate hooks. That cuts per-invocation overhead. Also, move heavy checks to a pre-merge pipeline stage where you can use spot instances, which are way cheaper. Luna: And negotiate? I imagine this is something you can bring up in your next enterprise agreement renewal. Lucas: Absolutely. The pricing for hook execution is not set in stone. If you're a big enough customer, you can push for a flat monthly fee for hook compute, or get it bundled back into your runner capacity. One infrastructure lead I spoke with got their provider to waive the hook charges entirely in exchange for a longer commitment. But you have to know to ask. Luna: So the takeaway is: read the fine print on your cloud bill, especially the new line items that sound like they came from a sci-fi novel. Lucas: Exactly. And on that note, you know what I appreciate about this show? We don't have advertisers breathing down our necks to tell you what to think. We can just dig into the details that actually matter for your bottom line. Luna: Yeah, that's a luxury. And it's only possible because of listeners who chip in. If you value these deep dives, you can support us at buy me a coffee dot com slash fexingo. Lucas: That's the whole deal — no ads, just the analysis. And it genuinely helps us keep doing this. Luna: Alright, back to the numbers. So for that SaaS firm, they managed to cut their hook bill by forty percent just by consolidating three hooks into one. That's real money. Lucas: And a good reminder that the cloud bill is no longer just about compute and storage. It's these little metered actions that add up. As we move into August 2026, expect more of these micro-metering changes. The providers are getting more granular by the quarter. Luna: So what's the next frontier? Are they going to charge per keystroke in the IDE? Lucas: Don't give them ideas. But seriously, the pattern is clear: anything that runs in the cloud, even a small script triggered by a developer's commit, is now a revenue line. The sooner you map out your hook inventory, the better positioned you'll be for the next pricing update.