← Company
How we build · Infrastructure

We run our own servers, on purpose

tAI doesn't run on a general-purpose third-party AI platform we're renting space on. Here's what we actually operate, and why it was worth the extra work.

Most AI products are built on top of someone else's model, served through someone else's infrastructure. That's a completely reasonable way to build a product quickly, and plenty of good products are built that way. We made a different choice: tAI runs on servers we operate ourselves, end to end, and we think that choice is directly tied to whether the privacy commitments we make are actually true or just a policy document.

Why this was worth it

If a request has to pass through infrastructure we don't control to reach the model that answers it, then our privacy commitments are only as strong as a contract with whoever operates that infrastructure. We wanted something stronger than a contract: a system where the entire path your data travels, from the request hitting our servers to the model generating a response to that response reaching you, is infrastructure we built, operate, and can actually audit ourselves.

That's a genuinely more expensive and slower way to build a company. Buying capacity from a large cloud AI provider scales instantly and requires none of the operational work described below. We made the trade-off deliberately, because we think owning the infrastructure is the only way to also own the responsibility for what happens on it, rather than being able to point at someone else's status page when something goes wrong.

How it's actually laid out

tAI runs across multiple data centers rather than a single machine, specifically so that a hardware failure or a network outage in one location doesn't take the whole product down. Each node runs a full copy of the application stack, capable of serving real traffic on its own, not just a passive standby waiting to be manually promoted.

The database that holds your chats, your connector state, and your account sits behind streaming replication to a hot standby, so a primary database failure has an already-current copy ready to take over rather than requiring a slow restore from backup. We built and tested this failover path ourselves, including deliberately taking the primary offline to confirm the standby actually takes over correctly under real conditions, not just in a design document.

Failover without a single point of failure

A failover system is only as trustworthy as the times it's actually been triggered for real. Ours has been: we've run live failover drills where we intentionally take the primary application and database offline and confirm traffic correctly moves to a standby node, and that it moves back cleanly once the primary recovers. We treat a failover path that's only ever been reviewed on paper as unproven, so we test it the same way an actual outage would exercise it, deliberately and periodically, not once at launch and never again.

A dedicated, firewalled execution environment

When tAI runs code on your behalf, generating a chart, processing a file, testing something you asked it to build, that execution happens in an isolated sandbox environment, separate from the servers holding your account data and conversation history. That sandbox has no general network access by design, so code running inside it can't reach out to arbitrary external services even if it tried to.

The honest trade-off

Running your own infrastructure means you're also the one who gets paged at 3am when something breaks, rather than filing a support ticket with a cloud provider and waiting. It means capacity planning is our problem, not a slider on someone else's dashboard. We think that trade-off is the correct one for a product that people connect their email, their code, and their work to, but it is a real trade-off, and we'd rather say so plainly than pretend owning infrastructure has no downsides.