What is actually in place — and what is not.
Security pages usually list badges. This one lists mechanisms, most of which you can verify yourself from outside, and ends with an honest list of what we have not done yet.
- Tenancy
- 1 VMOne tenant per virtual machine, GPU passed through
- Volumes
- EncryptedAt rest, on every persistent volume
- Accounts
- TOTP 2FAArgon2id password hashing, per-device sessions
- Certified
- Not yetNo SOC 2, no ISO 27001 — we say so rather than imply it
Your GPU is inside your machine, not next to someone else's process.
The cheapest way to sell GPU time is to run several tenants as containers on one host kernel. We do not do that, because a kernel escape would be a catastrophe for everyone on the box.
One tenant per virtual machine
Each instance is a KVM virtual machine with its own kernel, its own memory and its own devices. The GPU is passed through to it; it is not shared, time-sliced or virtualised between customers.
Private network per project
Instances see their own network segment. Traffic between customers does not cross a shared layer-2 domain, and a node is never rented to two tenants at once.
Disks wiped between tenants
Local NVMe scratch is destroyed when an instance ends, before the node is offered again. Persistent volumes are encrypted at rest and belong to one account.
Two doors, both locked
SSH with your own key, and the API over TLS. No password is ever issued for an instance, and no management agent phones home from inside your machine.
The console was built assuming someone will try.
- Passwords
- Hashed with Argon2idNever stored or logged in clear, never sent by email, never recoverable — only resettable.
- Two-factor
- TOTP, with 8 single-use recovery codesShown once, on purpose. Store them somewhere that is not the account they unlock.
- Sessions
- Listed per device, revocable one by oneEach session shows the browser, the system and when it was last used, so a stranger stands out.
- API keys
- Shown once at creation, revocable at any timeRotate by creating the new key, deploying it, then revoking the old one.
- Sign-in attempts
- Throttled per addressRepeated failures slow down and then stop, which makes password spraying expensive.
- Forms
- CSRF tokens and a bot challenge on authenticationNothing on the console changes state through a simple link.
Verify it yourself
from your terminalSecurity claims should be checkable. These are:
$ curl -sI https://spotgpus.com | grep -i -E 'strict-trans|content-sec|x-frame|x-content|referrer' strict-transport-security: max-age=31536000; includeSubDomains content-security-policy: default-src 'self'; ... x-frame-options: DENY x-content-type-options: nosniff referrer-policy: strict-origin-when-cross-origin
The content security policy forbids inline scripts, inline styles and third-party script hosts. That is why this site has no analytics beacon, no font CDN and no tag manager: it could not load them even if we wanted to.
What we hold, where it lives, how long it stays.
| Data | Why we have it | Where | How long |
|---|---|---|---|
| Account details | Email and password hash to sign you in; company name if you give one, for invoices | Platform database | Until you close the account |
| Usage records | Minutes per instance, to bill and to answer disputes | Platform database | 7 years (accounting) |
| Payment records | Deposits and their on-chain references | Platform database and public blockchains | 7 years (accounting) |
| Your instance contents | We do not read them; they exist because you put them there | Your volumes and scratch disks | Until you delete them |
| Access logs | Security and abuse handling for the website and console | Edge and platform logs | 30 days |
| Support messages | To answer you, and to remember what was said | Platform database | 2 years after the ticket closes |
There are no egress fees and no export request to file: copy what you want out of the instance, then delete the volume. Deletion of a volume is immediate and final.
Encrypt inside the instance with a key you keep. Passing a key in at runtime — through an environment variable or an entrypoint fetch — keeps it out of the volume and out of our reach.
Found a hole? Tell us, and we will not send lawyers.
Good-faith security research on our own systems is welcome. Report it privately through the abuse form with the category Security, and we will work it with you.
What we promise
- An acknowledgement within 12 hours, from a person, not a robot
- An assessment and a plan within five working days
- No legal action against research that follows the rules below
- Credit in the fix note if you want it, and silence if you prefer
Rules of engagement
In scope
- spotgpus.com and cloud.spotgpus.com
- The API and the metadata endpoint, from your own instance
- Isolation failures between instances or between accounts
Out of scope
- Denial of service, load testing and resource exhaustion
- Anything touching another customer's data, instances or account
- Social engineering of our team or of the facilities
- Reports generated by a scanner with no demonstrated impact
Test against resources you own or have created in your own account. Stop at proof of concept, do not exfiltrate, and give us a reasonable window before publishing.
What we have not done yet.
A trust page that only lists strengths is marketing. These are the things a careful buyer would ask about, with the real answer.
- Third-party certification
- None. No SOC 2, no ISO 27001, no HIPAA or PCI attestation. If your procurement requires one, we are not the right provider today — and we will say so rather than waste your time.
- Independent penetration test
- Not yet published. The disclosure programme above is open in the meantime, and we will publish a summary when a test has been done.
- Regional redundancy for your data
- A volume lives in one region and is not replicated elsewhere. Copy anything irreplaceable out of the platform; we do not pretend a single volume is a backup strategy.
- Uptime history
- Short, because the platform is new. The status page shows current component state and the incident record since launch, without smoothing.
- IPv6
- Instances are IPv4 today.
Security questions
Can your staff read my data?
Not in the normal course of running the platform: volumes are encrypted at rest and nobody browses customer disks. Physical and hypervisor access exists — that is true of every infrastructure provider — and is limited to the engineers who operate the nodes, used only to keep hardware running or when you ask us to look at something. If your threat model does not allow that, encrypt inside the instance with a key we never receive.
Do you hold SOC 2 or ISO 27001?
No. We launched in September 2026 and we are not going to claim a certificate we do not have. What we can do is describe exactly how the platform is built and let you check the parts that are observable from outside — the response headers, the isolation model, the session and key handling in the console.
What happens to my data when I stop paying?
Instances stop and volumes keep existing — and keep being billed. We contact you before anything is deleted, and deletion is never silent. You can delete a volume yourself at any moment, and that deletion is final.
Is the platform available over IPv6?
Instances receive a public IPv4 address today. IPv6 is on the list; if it blocks you, say so in a ticket — the order of that list is decided by what customers are actually stuck on.
Do you log what I run?
We record what the platform needs to bill and to operate: instance lifecycle, node assignment, usage minutes, payment records, and the access logs of the console and the website. We do not inspect the contents of your instances or your traffic. The detail is in the privacy policy.
Who else touches my data?
The facility operators that host the hardware, and the network provider in front of the website and console. Payment confirmations happen on public blockchains. The list of categories, and what each one gets, is in the data processing addendum.
Questions your security team would ask?
Send them. We answer in writing, and we say "no" or "not yet" when that is the honest answer.
For a vulnerability, use the private report form rather than the general contact form.