Most European infrastructure teams have a default: when in doubt, deploy in Frankfurt. It is a reasonable default. It is also the reason a lot of Spanish, Portuguese and Latin American traffic takes a scenic route across the continent before it reaches an application built specifically for it.
This is not an argument that Frankfurt is wrong. It is an argument that "where do I put the server" deserves about twenty minutes of actual analysis, and that for two specific audiences — Iberia, and Latin America served from an EU entity — Madrid answers a question Frankfurt cannot.
The honest case for Frankfurt
Start with why the default exists, because it is well earned.
Frankfurt is the densest interconnection point in Europe. As of August 2026, PeeringDB lists 1,017 networks connected to DE-CIX Frankfurt. Amsterdam's AMS-IX lists 861. Nothing else in Europe is close. Density matters because it decides how many networks your traffic can reach without transiting somebody else's backbone: more peers means shorter AS paths, fewer transit hops, and less exposure to congestion on a third party's link.
If your users are spread evenly across Europe, or you genuinely do not know where they are, Frankfurt is the correct answer and you should stop reading. The rest of this article is about the cases where you do know.
What "closer" actually means
Physical distance sets a floor on latency and nothing more. Light in fibre covers roughly 200 km per millisecond, and fibre routes are never straight, so Madrid to Frankfurt — about 1,400 km as the crow flies — has a theoretical one-way floor somewhere around 7 ms and a real-world round trip that is usually a good deal more.
That floor is rarely the problem. The problem is the part above the floor: how many networks the packet crosses, whether it is handed to a transit provider that backhauls it somewhere unhelpful, and whether the return path matches the forward path. A poorly routed 1,400 km hop can cost more than a well-routed 3,000 km one.
This is why the interconnection profile of a city matters more than its position on a map. So here is Madrid's, measured rather than asserted.
Madrid's interconnection profile, August 2026
Spain has two significant exchange points, and they are not interchangeable:
| Exchange | Networks connected (PeeringDB, Aug 2026) |
|---|---|
| DE-CIX Madrid | 189 |
| ESpanix Madrid Lower LAN | 160 |
| ESpanix Madrid Upper LAN | 56 |
| For comparison: DE-CIX Frankfurt | 1,017 |
| For comparison: AMS-IX Amsterdam | 861 |
ESpanix is the incumbent — the Spanish exchange, where the Spanish eyeball networks live. DE-CIX Madrid is the newer international platform, part of the same operator as DE-CIX Frankfurt, and it reached its tenth year in Madrid in 2026.
Two hundred networks is not a thousand. But the two hundred that matter for Spanish and Portuguese consumer traffic are disproportionately present in Madrid and disproportionately reached from Frankfurt via transit. That is the entire argument in one sentence: for Iberian eyeballs, Madrid is peering and Frankfurt is transit.
The Latin America case, which is a different case entirely
The second reason to look at Madrid has nothing to do with Spain.
Madrid has become a European interconnection point for Latin American traffic. The EllaLink system runs from Sines in Portugal to Fortaleza in Brazil, and EllaLink established an open interconnection point in Madrid, giving customers there a connection to Brazil across the South Atlantic without routing through North America. Historically, a great deal of Europe–LatAm traffic went Europe → United States → Latin America, which is exactly the kind of detour that turns a 1,400 km problem into a 12,000 km one.
Alongside it, the Iberian Peninsula has become a landing region for systems including 2Africa and Medusa, which is why Madrid, Lisbon and Barcelona increasingly get discussed as one connectivity cluster rather than three separate markets.
So if the sentence "we are an EU company with customers in Mexico, Colombia, Argentina or Chile" describes you, Madrid is a serious candidate and Frankfurt is not, on network grounds alone.
The jurisdiction point, stated carefully
Spain is an EU member state, so data hosted in Madrid sits under the same GDPR framework as data hosted in Frankfurt or Amsterdam. Choosing Madrid over Frankfurt does not change your regulatory position within the EU, and anyone telling you otherwise is selling something.
What it can change is a data residency commitment made to a specific customer or under a specific national requirement. If a Spanish public-sector or regulated client has asked for infrastructure in Spain, that is a contractual fact and Madrid answers it. If nobody has asked, treat jurisdiction as neutral between EU locations and decide on network grounds.
When Frankfurt still wins
Be honest about the cases where the default holds:
- Pan-European traffic with no centre of gravity. More peers, shorter paths, more of Europe reached without transit.
- Heavy east–west traffic to other providers' infrastructure. If you interconnect with partners who are all in Frankfurt or Amsterdam, be where they are.
- Redundancy of a Madrid deployment. Two sites is a different design from one, and the second one usually should not be next door.
- Cost-sensitive bulk egress. Bandwidth economics in the largest hubs are what they are for a reason.
How to test this instead of believing it
You do not need to take any of the above on faith, and you should not. Three checks, none of which need a purchase:
- Measure from where your users are, not from your laptop. RIPE Atlas lets you run ping and traceroute measurements from probes hosted inside real ISPs in Spain, Portugal, Brazil or wherever your users actually sit. This is the single most useful thing on this list, and it is free.
- Read the AS path, not just the round-trip time. Look at a provider's looking glass and see how your target networks are reached — peered directly at an exchange, or handed to a transit provider.
mtr --report --tcp --port 443from a test box gives you the per-hop picture. - Check the return path separately. Internet routing is asymmetric far more often than people expect. A forward path that looks clean can pair with a return path that goes via London.
Run those three against a candidate location before you commit hardware to it. Twenty minutes of measurement beats a year of assuming.
Decision summary
The Madrid vs Frankfurt question reduces to one thing: whether you know where your users are. If you do, and they are in Iberia or Latin America, the default is costing you a routing detour you can measure.
| If your traffic is… | Deploy in |
|---|---|
| Spread across Europe, no clear centre | Frankfurt or Amsterdam |
| Predominantly Spain and Portugal | Madrid |
| EU entity, users in Latin America | Madrid |
| Latency-critical to German/DACH users | Frankfurt |
| Serving both Iberia and the rest of the EU | Madrid plus a northern site |
Running this on NexonHost
NexonHost sells dedicated servers in Madrid from Equinix MD2, with the same configurations and the same pricing as every other NexonHost location — Intel Xeon platforms available as standing stock with automatic provisioning, and AMD EPYC platforms built to order. Every configuration ships an unmetered 1 Gbps port and DDoS protection.
If the answer turns out to be "both", the full dedicated server range is orderable in any of twelve cities, so a Madrid node and a Frankfurt node are the same hardware, the same control panel and the same invoice — which is the point of picking a provider with a footprint rather than picking a city.
Worth reading next: Netherlands vs Germany dedicated servers for latency-sensitive applications, which runs the same analysis for the northern European pair, and how to choose a dedicated server in Europe for high-traffic workloads.
Sources
- Network counts per exchange: PeeringDB, retrieved 20 August 2026.
- DE-CIX Madrid: DE-CIX Madrid location page.
- EllaLink Madrid interconnection point: EllaLink press release.
- Iberian subsea landscape: Stackscale, submarine cables in the Iberian Peninsula.




