← Blog

EU-only should be a routing rule, not a sentence on a website

Every European AI vendor says something about data staying in Europe. Almost none of them let you express it on the request, which means the claim lives in a marketing page and a contract rather than in the system.

Here it is a header:

-H "X-ElephantPool-Require: region:eu"

The scheduler gives that job only to a machine whose tags cover the requirement. Not prefer — only. If nothing eligible is available you get a 503 saying so immediately, instead of a request that quietly waits out the clock and reports a timeout.

The part that decides whether it means anything

Where a machine's location comes from.

It comes from the address the machine connects from, resolved on our side. The machine is never asked, and there is no field for it to answer with. That is the whole design: a host that could declare its own region:eu would turn the guarantee into an honour system, and an honour system is what you already have with a vendor's website.

It fails closed. If the location cannot be established — no database, an unroutable address, a country we do not recognise — the machine gets no region tag, and a machine without one never receives work that requires it. We would rather lose the capacity than route EU-only traffic on a guess.

What we do not keep

The address. An IP is personal data, and "we do not keep what we do not need" has to apply to our hosts as well as our customers. What is stored is a two-letter country code and a salted hash that only ever gets compared to itself, so we notice when a machine moves.

The lookup runs against a local database. Sending every host's address to a third-party geolocation service would have been half a day less work and would have leaked exactly the thing we promise not to collect.

What it proves, precisely

That the machine which produced your tokens presented an address allocated to an EU or EEA country, and that the scheduler refused to route your job anywhere else.

Not that the hardware is physically there. Address geolocation is evidence, not attestation, and a determined host could route through an EU network. Hardware attestation would close that gap and is not built. We would rather tell you where the edge of the guarantee is than let you find it during an audit.

The two claims that carry more weight for most compliance questions are unchanged and stronger: the control plane runs in the EU on hardware this company owns, with no US parent and so no CLOUD Act obligation reaching it — and prompts are not retained at all, which makes where they were briefly processed a much smaller question than it would otherwise be.

It generalises

region:eu is one tag. The mechanism is a prefix:value vocabulary, so country:be and gpu:nvidia already work, and the next axis somebody needs — a certified-hardware pool, a customer's private fleet — is a new prefix rather than a new subsystem. The full reference is in the knowledge base.

Reference

Read next

one model, every card: how a 27b runs on 8 gb

Qwen3.8 27B ships in five builds, from Q5_K_M on a 24 GB card down to IQ2_XXS on 8 GB. Why we split models from builds, what quantization actually costs, and how a quantized KV cache doubled our context overnight.

we stopped projecting your earnings and started measuring them

Most GPU marketplaces advertise what a card could earn. Our dashboard shows what yours measured, and refuses to show a number until it has one. Here is why that choice cost us a nicer-looking page and was still right.

Model catalogue · Knowledge base · Run a GPU