Architecture

Your cloud. Your data. Our software.

Landed is software that runs inside your cloud account. It's not a SaaS platform that your data passes through — it's a service you license that runs on your own compute, writes to your own warehouse, and never phones home with your data.

Source APIs
Bing, Stripe, etc.
Landed
Runs in your VPC
Your Warehouse
BigQuery, Postgres

Data flows directly from source to your warehouse. Landed never sees your data — it only orchestrates the connection. Connector updates are pulled from our servers, but your data never leaves your VPC.

Getting started

From zero to syncing in minutes.

01

Install Landed in your cloud

Landed ships as a Docker container. You run it in your own GCP or AWS account — one command and it's up. It needs outbound internet access to reach source APIs, and write access to your destination warehouse. That's it.

# Pull and start Landed
docker-compose up -d landed

# Verify it's running
landed status
  • Runs on any VM — GCE, EC2, a $10 DigitalOcean droplet
  • No inbound ports required — Landed reaches out, nothing reaches in
  • Your credentials are stored locally, encrypted at rest
02

Connect your sources

Add connectors through a simple YAML config or the CLI. For OAuth-based sources, Landed opens a browser flow — you authenticate directly with the source, and the token is stored locally. We never see it.

# connectors.yaml
connectors:
  - name: bing-ads
    type: bing_ads
    account_id: "12345678"
    destination: bigquery
    schedule: "*/5 * * * *"  # every 5 min
  • OAuth tokens stored locally — we never see your credentials
  • Schedule is a standard cron expression — sync as often as you want
  • Multiple connectors can share a destination or write to separate schemas
03

Data lands in your warehouse

On each sync, Landed pulls from the source API, validates the data, and writes it to your destination. Every sync produces a receipt — row counts, schema checks, and a timestamp. You always know exactly what landed and when.

  • Incremental syncs by default — only pulls new or changed records
  • Full refresh available per connector if you need it
  • History mode adds _landed_at, _is_deleted, and _is_current to every row
  • Schema drift is detected and surfaced before it breaks your models
04

We keep the connectors working

Source APIs change. Fields get renamed, endpoints get deprecated, auth flows get updated. Landed checks for connector updates on a regular cadence and applies them automatically — the same way your OS applies security patches. You don't have to do anything.

  • Connector updates are signed and verified before applying
  • Breaking changes are flagged in the dashboard before they're applied
  • You can pin a connector version if you need stability during a migration
  • Update history is logged — you always know what changed and when

Principles

Built on a few strong opinions.

Your data never leaves your VPC

This is non-negotiable. Landed is software you run, not a platform your data passes through. We have no access to your data, your credentials, or your customers' information.

Pricing should reflect actual cost

A scheduled API call costs pennies to run. We charge a flat rate per connector — not a percentage of your data volume, not a per-row fee, not a MAR limit. You pay for the software, not the compute.

Sync frequency is your decision

You're running on your own compute. If you want data every minute, sync every minute. We don't throttle frequency or charge more for it. The only limit is what your source API allows.

Connectors should just work

When an upstream API changes, your connector should update before it breaks — not after you file a support ticket. We monitor API changelogs and ship fixes proactively.

You should always know what landed

Every sync produces a receipt. Row counts, schema checks, primary key validation. If something's wrong, you find out immediately — not when someone asks a question your data can't answer.

Simple to operate, not just to start

Getting started is easy. But we also care about day 90 — monitoring, debugging, schema migrations, adding new connectors. The dashboard and CLI are designed for ongoing operation, not just setup.

Common questions

Things people ask.

What does "runs in my infrastructure" actually mean?
You run a Docker container on a VM in your own cloud account (GCP, AWS, or anywhere Docker runs). Landed connects to your source APIs and writes to your warehouse. Your data never touches our servers — only connector update metadata does.
How much compute does Landed need?
Very little. A single connector syncing every 5 minutes runs comfortably on a 1 vCPU / 1GB RAM VM. Most customers run 5–10 connectors on a single small instance. The compute cost is typically $5–20/month depending on your cloud provider and sync frequency.
What happens if a sync fails?
Landed retries with exponential backoff. If it keeps failing, you get an alert via the dashboard, email, or Slack (your choice). Failed syncs are logged with the full error — no guessing what went wrong.
How do connector updates work?
Landed checks for connector updates on a regular cadence. Updates are signed by us and verified before applying. Non-breaking updates apply automatically. Breaking changes (schema changes, new required fields) are surfaced in the dashboard for you to review before applying.
Can I run Landed on-premise, not in a cloud?
Yes. Landed runs anywhere Docker runs — on-premise, in a private data center, or on a cloud VM. The only requirement is outbound internet access to reach source APIs and pull connector updates.
How is Landed different from Fivetran?
Fivetran is cloud-hosted — your data passes through their infrastructure, you pay usage-based fees, and sync frequency is plan-limited. Landed runs in your own cloud: your data never leaves your VPC, pricing is flat per connector, and you can sync as often as you want. Fivetran charges $500–1,500/month for a typical stack. Landed charges $50/connector.
How is Landed different from Airbyte?
Airbyte is open source and self-hosted, which is great — but you're responsible for maintaining the connectors yourself. When an API changes, you fix it. Landed is a licensed service: we maintain the connectors, push updates, and keep them working. You get the control of self-hosting with the reliability of a managed service.

Ready to see it in action?

Join the early access list. We'll reach out personally and walk you through setup.