back to overview
For enterprise·10 min read

Building a global mobility vertical: why infrastructure beats internal scraping

Total cost of ownership for an in-house visa-booking bot vs licensing Opaige. Engineering headcount, maintenance cadence, legal exposure, and the product velocity you give up either way.

The meeting where the decision gets made

$1.5M
3-year in-house TCO
$200–300k build + $400–600k/yr ops
$420k
3-year Opaige TCO
1,000 bookings/month, all-in
3.5 FTE
Engineers you don't hire
Redirected to your actual product
2–3 wks
Downtime per portal DOM change
Absorbed by Opaige, not your roadmap

You are at a global mobility company — maybe an EOR, maybe a relocation platform, maybe a corporate travel service. Your product lead has identified visa-appointment reliability as the single biggest gap between your promise ("hire anywhere in 48 hours") and your reality ("…unless your new engineer is Nigerian and needs a UK visa, in which case good luck").

The question on the whiteboard is: do we build this ourselves, or do we license an infrastructure partner? Your CTO wants to default to "build" because internal tools are usually cheaper and more bendable. Your finance lead wants a TCO model. This guide gives you both.

What 'internal scraping' actually costs to build

M1–2
Initial build: 2–3 senior engineers, 4–6 months
Fully loaded at ~$200k/year each: $200–300k of comp to reach a production-ready v1 covering one or two portals. This is the number teams put in the proposal.
M3–6
Infrastructure: proxies, solvers, monitoring
Residential proxies at $2–6/GB. Captcha solver contracts ($300–$1,500/month for Turnstile + reCAPTCHA with failover). Observability stack. These are line items that don't appear in the initial build estimate.
M6+
Ongoing: 1 FTE for portal maintenance
Portals change DOM quarterly. CF edge rules ship without notice. You are now running a miniature adversarial-security team whether you wanted to or not. One engineer minimum, full time.
M12+
Compliance engineering: 0.5 FTE
Encryption, audit logs, SOC 2 evidence, GDPR DPIA — none of this writes itself. Your security team will ask for it when the first enterprise customer sends a due-diligence questionnaire.
The number that surprises every CTO
The initial build cost ($200–300k) is the number in the proposal. The ongoing cost ($400–600k/year) is the number that shows up six months later. Over three years, total in-house TCO for a serious implementation lands at $1.4–1.9M. Most teams that built internally didn't model beyond year one.

Head-to-head: build vs license

In-house scraper
Opaige API
Year 1 cost (1k bookings/mo)
$500–700k (build + ops)
$110–140k
Year 2 cost
$400–600k (ops only)
$110–140k
Year 3 cost
$400–600k
$110–140k
3-year TCO
~$1.4–1.9M
~$330–420k
Portal DOM change response
2–3 weeks downtime
< 24h, absorbed by us
Compliance surface
Your engineers own it
DPA + SOC 2 provided
Portal ban liability
Lands in your inbox
Our incident, our comms
Engineers freed for product
0 — they're maintaining this
3.5 FTE

Our customers who migrated from internal scrapers put the reclaimed engineers on core product work — their actual differentiator. That's where the real ROI hides: not in the budget line you eliminate, but in the product surface you finally ship because your engineers aren't maintaining a Cloudflare bypass.

The hidden costs build-it-yourself teams forget

1. The portal-change tax. VFS updated its Turnstile integration in early 2026 and broke every in-house scraper we know of for 2–3 weeks. TLS Contact has upgraded Cloudflare Managed Challenge twice in the last year. Each event is a week of engineering downtime plus a week of client-visible breakage. Opaige absorbs that cost across every customer; you absorb it yourself if you build.

2. The legal and compliance surface. An in-house scraper means your company is the data controller for thousands of passport numbers, addresses, and portal credentials. Your Head of Legal now has to sign off on your Turnstile bypass technique. That conversation is not fun. Licensing Opaige means we're the processor, you're the controller, the DPA is standardised, and your Legal team signs it once.

3. The reputation-risk layer. When your in-house scraper gets flagged by a portal and blocks your users, the support ticket lands in your inbox. When Opaige has a portal incident, we post on /status, we fix it, and we wear the reputation cost. You get to tell your customers "our partner is handling it" — which is a much easier conversation than "our engineers are debugging it."

When building in-house actually makes sense

We're not going to argue you should never build. A few situations where in-house is the right call:

  • You're operating at 10,000+ bookings a month. The pricing curves flip; your per-booking cost drops below the licensing fee.
  • You have a regulatory reason that mandates on-premises data processing (some EU member-state public-sector contracts).
  • Visa automation is your actual product, not a supporting feature. In that case you're in our space, and we'd rather talk about a partnership than a licensing deal.

For everyone else — EORs, relocation platforms, corporate travel services where visa booking is one of many features — the maths says license. The time your team saves compounds into whatever differentiator actually wins your market.