Privacy
Draft, under review. This is a plain-language draft that hasn’t had a final legal review yet, and it will change before Harbor Cloud opens. Questions: hello@useharbor.io. Last updated .
The short version
- This website has no analytics, no tracking and no cookies of ours.
- Self-hosted Harbor stores everything in your own database, on your own server. It sends nothing to us. Ever.
- Harbor Cloud isn’t open yet. When it opens, we’ll store the same kinds of data on servers we run, use it only to run Harbor for you, and never sell it or use it to train AI models.
- Harbor never posts without a person approving it, on either version.
“Harbor”, “we” and “us” below mean the people who build and run Harbor. You can reach us at hello@useharbor.io.
This website
useharbor.io is a static site. We don’t run analytics, advertising pixels or third-party trackers on it, and we don’t set cookies. Fonts are served from this site, not from a font provider.
Our hosting provider keeps standard server logs (IP address, browser, the page requested and the time) to deliver the site and protect it from abuse. We don’t combine those logs with anything else.
If you email us, for example to ask for early access, we keep your email address and message to reply to you and to tell you when Harbor Cloud opens. Ask us to delete it at any time.
Self-hosted Harbor
When you run Harbor yourself, you are the one storing and processing data, on infrastructure you control. Harbor has no telemetry: it doesn’t phone home, report usage or send anything to us.
What it stores, in your database
| What | Details |
|---|---|
| Brands and Brand Memory | Names, logos, voice rules, audiences, offers, knowledge notes, example posts, and the evidence linking rules to posts. |
| Connected accounts | For each account: the platform’s account id, handle, display name, profile picture URL, the permissions granted and the access tokens. Tokens are encrypted with AES-256-GCM using your HARBOR_SECRET_KEY. |
| Content | Ideas, drafts and every draft version, posts, campaigns and canvas cards, approvals and their notes. |
| Performance | Metric snapshots for each post at 1h, 6h, 24h, 3d and 7d, the platform’s raw response next to the normalized numbers, verdicts, signals, insights and digests. |
| Replies | Where the platform allows it: replies to your posts, with the replier’s handle, display name, text, time and likes, and the themes Harbor groups them into. |
| Imported posts | Past posts you choose to import from a connected account, with their metrics. |
| Competitors | Names, URLs, handles and notes you add yourself. |
| Media | Images and video you upload, with alt text, tags and focal point, stored on disk under HARBOR_MEDIA_DIR. Their crops are served at public, unguessable URLs so platforms can download them. |
| Agents and keys | Agent runs with their inputs, steps and token usage, automations, and API keys (only a SHA-256 hash and the first 12 characters of each key). |
The database is Postgres if you set DATABASE_URL, or an embedded PGlite database in apps/api/.pglite if you don’t.
Where data goes
- In sandbox mode (the default), nowhere. Platforms are simulated and nothing leaves your machine.
- In live mode, to the platforms you connect (X, LinkedIn, Instagram, Threads), through developer apps you registered: Harbor sends them the posts you approve and reads back metrics and, where you’ve allowed it, replies.
- If you turn on a real AI model, the brand context and briefs needed for each request go to that model provider under your own API key and their terms. The default simulated model runs locally and sends nothing.
If you run Harbor for other people, such as clients, you’re responsible for telling them how you handle their data. Replies to posts contain other people’s public handles and words; treat them with care.
Harbor Cloud
Harbor Cloud is not open yet. This section describes what it will store and how, so you can judge it before you sign up. We’ll update it, and tell existing users, if anything changes before launch.
- Your account: your name, email address and sign-in details, and which plan you’re on.
- Billing: handled by a payment processor. We’ll see your billing name, country and the last four digits of your card, not the full card number.
- Everything self-hosted Harbor stores (the table above), on infrastructure we run, with tokens encrypted at rest and backups.
- Usage counts needed to apply plan limits: AI runs, X reads and how long metric snapshots are kept.
- Operational logs: requests and errors, kept for a short time to run and debug the service.
We use this data only to provide Harbor to you: publishing what you approve, measuring how it did, and drafting and planning from it. We don’t sell it, we don’t use it for advertising, and we don’t use your content or platform data to train AI models.
Data from the platforms
When you connect an account, the platform shows you exactly which permissions Harbor asks for. Here is what each one is used for.
Instagram and Threads (Meta)
- Basic profile (account id, username, name, picture): to show which account a post goes to.
- Content publishing: to publish posts, carousels, Reels and threads you have approved. Never anything you haven’t.
- Insights: to read each post’s metrics five times over its first week and compare it with your other posts.
- Comments and replies: to read replies to your posts and group them into themes; on Threads, also to post the replies that make up a thread you wrote.
X
Your account’s basic profile, posting (including images), and reading your own posts’ metrics. Reading replies and importing past posts is off unless the person running Harbor turns it on.
Your basic profile through Sign In with LinkedIn, and posting to your own profile. Harbor doesn’t read LinkedIn metrics or comments.
Harbor uses platform data only for these purposes and only for the account that connected it. It isn’t shared across workspaces, sold, or used for anything else.
Deleting your data
- Disconnect an account in Harbor (on the brand’s page): the account record and its access token are deleted, along with the posts Harbor stored for it.
- Remove Harbor from the platform: in Instagram or Threads, go to the apps and websites settings and remove Harbor; on X or LinkedIn, revoke Harbor in your connected apps. Harbor can no longer use the token. On Cloud, we delete data received from that account when the platform tells us you removed the app.
- Delete a brand in Harbor: its Brand Memory, accounts, posts, metrics and replies are deleted with it.
- Self-hosted: you control the database and the media folder, and can delete anything in them directly. Removing an image in the library hides it first; delete the file from
HARBOR_MEDIA_DIRto remove it from disk. - Harbor Cloud, or anything you sent us: email hello@useharbor.io with the subject “Delete my data”. We’ll confirm, and delete it within 30 days, including from backups as they rotate.
Who we share data with
For this website: our hosting provider. For Harbor Cloud, when it opens: the platforms you connect (to do what you ask), and the service providers we need to run it, such as hosting, database, email, payments and the AI model provider. We’ll list each of them here before Cloud opens. We share data with authorities only when the law requires it.
Your rights
Wherever you live, you can ask us what we hold about you, ask for a copy, ask us to correct it, or ask us to delete it. Email us and we’ll answer within 30 days. If you’re in the EU or UK, you can also complain to your data protection authority.
Harbor isn’t meant for children under 16.
Changes and contact
This is a draft. When we change it, we’ll update the date at the top, and for material changes we’ll tell Harbor Cloud users by email before they take effect. See also the terms.
Questions or requests: hello@useharbor.io.