A worked example on a fictional but realistic system. Every number below is the kind of number ServiceHop produces — structural, semantic, and traceable to real calls.
A European tour operator running 150+ services across multiple clusters and three data centers. 55 million API calls per day at peak booking season. The estate has grown organically over a decade through three platform migrations, two acquisitions, and constant feature pressure.
The team believes they are operationally healthy — uptime is fine, latencies are within SLO, the dashboards are green. But every quarter the cost-to-serve climbs and nobody can say exactly why.
They asked ServiceHop a single question: where is our complexity coming from?
Across 14 days of peak-season traffic — over 770 million calls — request payloads to tariff-calculator and pricing-engine shared the same field set on 94% of invocations. The 6% divergence was traced to a legacy currency-conversion header pair inherited from an acquisition, which neither service consumed.
On every booking flow that touched tariff-calculator, pricing-engine was invoked within the same logical transaction — 100% co-invocation across 11 distinct upstream entry points (search, package builder, agency portal, mobile checkout, group bookings, and seven others). The two services never operated independently.
Field-by-field classification showed identical semantic roles: both services received the same product identifier shape, the same date range, the same passenger descriptor, and the same currency code. The response contracts differed only in key names — one used total_price, the other amount.gross.
Merge tariff-calculator and pricing-engine into a single pricing service. The behavioral overlap, structural equivalence, and total co-invocation mean there is no functional or operational reason to run both. Expected impact: one fewer service to operate, one fewer deployment pipeline, one fewer on-call rotation, ~7% reduction in pricing-related infrastructure cost — and zero change in behavior visible to any upstream caller.
Every system produces findings like this — most teams just can't see them.
Request a walkthrough →