The biggest mistake is assuming an on premises LLM solves data residency. It removes one transfer path, but prompts, logs, embeddings, telemetry, backups and support access can still leave the region. Map where every piece of data goes, then decide what stays local.
What does data residency actually mean here?
Residency is a rule about where data is stored or processed. It comes from law, contract or policy. In the EU, the GDPR's Chapter V governs transfers of personal data to third countries. Article 44 states the general principle for transfers, Article 45 covers adequacy decisions, Article 46 covers appropriate safeguards and Article 49 covers derogations for specific situations. This post is not legal advice; ask counsel which rules bind you.
For an LLM, "data" is not only the prompt. It includes retrieved documents, conversation history, tool outputs, embeddings, fine tuning sets, evaluation sets and logs.
Mistake 1: forgetting the logs
Teams place the model on site, then ship application logs, traces and error reports to a cloud service in another region. Those logs often contain full prompts. Decide what is logged, redact it, and keep log storage in region.
Mistake 2: leaving the embedding and vector store out of scope
Embeddings are derived from your documents. Whether they count as personal data depends on content and context, so do not assume they are exempt. Store and back them up where the source documents are allowed to be.
Mistake 3: allowing silent fallbacks
A routing layer that falls back to a hosted model when the local one is busy defeats the point. Make fallback explicit, tested and, where residency is binding, disabled. Treat it as a configuration that auditors can read.
Mistake 4: ignoring support and update paths
Model files, container images and updates come from somewhere. Vendor support staff may ask for diagnostic bundles. Write down who can access the system remotely, from where, and under what approval. For air gapped sites, plan how signed updates arrive and how you verify them.
Mistake 5: skipping the security work because it is on site
OWASP's list for LLM applications still applies on premises. For example, its unbounded consumption entry notes that inference is compute heavy and recommends input limits, rate limiting, quotas, sandboxing the model's network reach, least privilege on model repositories and monitoring of resource use. An internal model can still be abused by an internal user or a compromised service account.
OWASP's system prompt leakage entry adds that prompts should not hold credentials or be treated as a security control. That holds on premises too.
Mistake 6: no inventory of models and who uses them
A local model that nobody tracks becomes shadow infrastructure. Keep a central inventory: model, version, source, location, owner, allowed data classes. OWASP recommends a centralized model inventory with governance and approval workflows.
Can you keep both flexibility and residency?
Often yes. Safeguard supports Full AI, Zero AI or bring your own model, including on premises and local models, and the CLI's local runner scans on your machine and pushes only encrypted results. That lets you keep source code local while choosing how models are used. Confirm in your own review what leaves your network for your configuration.
What to do
- Classify the data the LLM will touch and note any residency rule that applies.
- Draw a data flow diagram including logs, embeddings, backups and support access.
- Keep logs, vector stores and backups in the same region as the source data.
- Disable or explicitly approve any fallback to a hosted model.
- Apply input limits, quotas and network sandboxing to the local model.
- Keep a model inventory with owner and permitted data classes.
- Record the answers for your next audit.
Quick check
Does an on premises model make us GDPR compliant?
No. It removes one transfer path. Lawful basis, security, retention and other duties still apply.
Are prompts personal data?
They can be, if they contain information about identifiable people. Check the content you actually send.
Sources
- GDPR Chapter 5: transfers of personal data
- OWASP LLM10: Unbounded Consumption
- OWASP LLM07: System Prompt Leakage
- Safeguard docs: Local Runner
Last reviewed: 18 October 2026.