Privacy Policy
Last updated:
This page explains what Sell to State collects, why, and who else sees it. Plain language, no legalese. If something here is unclear, email us and we will fix the wording.
Who we are
Sell to State (selltostate.com) publishes public government contract award data and sells access to search, alerts, lists, and exports on top of it.
The tender record data itself comes from public government sources. It is not personal data we collected about you.
What we collect
1. When you just browse the site
We load PostHog analytics on our marketing pages. It records:
- pages you view and things you click
- your approximate location, derived from your IP address
- your browser, device type, and screen size
- a random visitor ID stored in a cookie so repeat visits are linked
PostHog is a US company. This data is stored on PostHog's US cloud.
We also load advertising tags from Google (through Google Tag Manager), X and LinkedIn. They record that you arrived from one of our ads, and they set their own cookies. We do not sell this data.
2. When you ask us to add a page or send a note
Some pages have a "claim this page" form. We store the email address you type, the page you were on, your free-text note, and the time. Our staff read these in an internal admin panel.
3. When you create an account
We use BetterAuth for sign-in. Depending on how you sign up, we store:
- your email address and a password hash, or
- your account ID and basic profile from Google, GitHub, Microsoft, LinkedIn, Apple, if you use social sign-in, or
- a passkey (WebAuthn) credential
We also store sessions, email-verification tokens, and — if you connect Sell to State to another tool over our OAuth/MCP endpoint — the client registration for that tool.
We also look up your public work profile. The next section explains what we get and what we do with it.
4. Your public work profile
When you create an account, we send your email address to MoltSets, a data provider, and ask for your public work profile. If MoltSets has one, we get:
- your name, job title, seniority and the area you work in
- your company, its website, LinkedIn page, size, revenue range and industry
- your LinkedIn profile address, headline and location
- a work email address, if you signed up with a different one
We store this with your account in PostHog and in Attio, our CRM. We use it to see which companies use the product, to decide who to talk to, and to plan the product. If MoltSets has nothing for your email, we store nothing extra.
Our founder's LinkedIn account may then send you one connection request through Grip, a LinkedIn tool. We do not send it if you are already connected or already have a request from us. You do not have to accept it.
We do this because we have a legitimate interest in knowing which businesses use our product. You can object at any time: email alerts@selltostate.com. We then delete the profile from PostHog and Attio, and cancel the connection request if it has not gone out. We do not use this profile for ads and we do not sell it.
5. Your company website and your first search
When you sign up, you give us your company website. We read up to 50 of its public pages with a crawler that we run on Railway. We keep that text with no end date: we use it again when someone gives the same website, and we read the website again after 30 days.
We send the website text, your answer to "What do you sell?" and the countries you chose to Anthropic (Claude), a US company. It writes the keywords of your first search. Anthropic does not use this data to train its models. We save the keywords as a search in your account; you can change or delete it.
We log each of these model calls in Langfuse, a US company: the text that went in, the keywords that came out, the cost and the time. We use the logs to fix and improve the search. Langfuse also sends the cost, the time and your user ID of each call to PostHog; the text does not go there. If you tick "I work independently" and give no website, we use only your answer.
6. When you use the product
We store what you do, because the product needs it to work:
- saved searches, their filters, and how often you want alerts
- notifications we sent you
- export logs — which export you ran, when, and how many rows
- API keys, stored as a hash (we cannot read your key back)
- referral codes
- workspace invites you send
7. When you use the API, the MCP server or a connector
You can use the data from your own code (the API and the CLI) or from an AI assistant such as Claude, ChatGPT, Cursor or Gemini CLI (the MCP server). For each call we store:
- your account, or the connector you signed in with
- the endpoint or the tool, the search text and the filters, and how many rows came back
- the time of the call
We use this to run the service, to keep usage inside the rate limits, and to see which searches and countries people need. The search text and the tool name go to PostHog, our analytics provider. We do not sell them and we do not use them for advertising.
Rate limits count calls per API key or connector. A call without a valid key is counted per IP address. We keep the counter, not a log of those calls.
When you connect an AI assistant, you sign in to your Sell to State account and allow the access. We store the connector's name, the address it returns you to, and the tokens we issue to it. An access token expires after 1 hour, a refresh token after 30 days.
We do not see your conversation with the AI assistant. We get only the tool call that the assistant sends to us.
8. When you pay
Card details never touch our servers. Stripe handles payment. We store your Stripe customer ID, subscription ID, plan, status, trial end date, and totals billed.
9. Email
We send email through Resend — invites, alert digests, welcome and lifecycle messages. Our emails contain a tracking pixel and redirected links, so we can see whether a message was delivered, opened, clicked, bounced, or marked as spam.
One thing worth stating clearly: for email events that happen before you have an account, we send your lowercased email address to PostHog as the identifier for that event. So PostHog holds raw email addresses for those events. If that is not acceptable to you, ask us to delete them (see below) and do not open our emails.
Product-update and lifecycle emails have an unsubscribe link. When you use it, we mark you unsubscribed in Resend and in PostHog, and both stop marketing email to your address. Sign-in, workspace-invite and payment emails still arrive while you have an account. To stop all email from us, reply to any message or email alerts@selltostate.com and we take you off by hand.
10. When we advertise
We buy ads on Google, X and LinkedIn. To see which ads bring customers, we tell these platforms when someone signs up, starts a checkout, or pays. We send:
- the event and its time
- the ad click ID from your visit, if you arrived from one of their ads
- your email address as a SHA-256 hash, not as plain text
- for a payment, the amount
We may also upload the hashed email addresses of account holders to Google and X. We use these lists to show our ads to you, to show our ads to people similar to our users, or to stop showing ads to people who already have an account.
These platforms do not get your searches, saved lists, exports or card details. To keep your email out of these uploads, email alerts@selltostate.com.
Who else sees your data
These are the companies that process data on our behalf:
| Company | What it handles |
|---|---|
| PostHog (US) | Product analytics, email-funnel events, support widget |
| Stripe | Payments and subscriptions |
| Resend | Outbound email |
| Railway | Our servers and Postgres database |
| Cloudflare | CDN, R2 storage, serving the public site |
| Typesense | Search index |
| Google / GitHub / Microsoft / LinkedIn / Apple | Only if you choose social sign-in |
| Google Ads | Ad measurement and ad audiences |
| X Ads | Ad measurement and ad audiences |
| LinkedIn Ads | Ad measurement |
| MoltSets | Public work profile lookup at signup |
| Attio | Our CRM |
| Grip | LinkedIn connection requests from our founder's account |
| Anthropic (US) | Writes the keywords of your first search from your website text and your answers |
| Langfuse (US) | Logs of the model calls that build your first search |
We do not sell your personal data. MoltSets gets only your email address, for the lookup in "Your public work profile" above. Google, X and LinkedIn get only what "When we advertise" above lists.
Data you send out yourself
If you set up an integration, we push your data where you tell us to — your webhook, your Google Sheet, or a scheduled CSV. That destination is yours. Once the data leaves, their privacy terms apply, not ours.
Cookies
We use cookies for four things:
- Keeping you signed in.
- Your last search and dashboard country — the app remembers the countries of your last search in a cookie for one year, and the last country you opened on the dashboard in a second cookie for one year, so they open with them next time.
- PostHog analytics — a cookie holding a random visitor ID.
- Advertising — cookies set by Google, X and LinkedIn to record that you arrived from one of our ads.
You can block cookies in your browser; sign-in will stop working if you do.
Company names and logos
We name real organisations in our marketing, since the underlying data is public. If you want your organisation's name or logo removed from our marketing material, email us. The rules for this are in the "Use of your name and logo in our marketing" section of our Terms & Conditions.
How long we keep things
- Account and product data — while your account exists, then deleted within 30 days of you closing it.
- API and MCP call records and connector tokens — the same as account and product data. Search events in PostHog follow PostHog's retention (below).
- Billing records — kept up to 7 years, because tax and accounting rules require it.
- Analytics events in PostHog — kept under PostHog's default retention; we do not extend it.
- Data sent to Google, X and LinkedIn — kept under each platform's own retention rules.
- Your public work profile (PostHog and Attio) — while your account exists. We delete it by hand within 30 days after you close the account or ask us to.
- The text of your company website — no end date (one copy for each time we read the website). The logs of the model calls that built your first search (Langfuse) — under Langfuse's default retention.
- Claim-form notes and email logs — 24 months.
- Anonymous, aggregated counts (e.g. "how many searches ran last month") — kept indefinitely. These cannot be traced back to you.
Your rights
You can ask us to:
- Show you everything we hold about you
- Correct anything wrong
- Delete your account and data
- Export your data in a machine-readable file
- Stop emailing you — reply to any message from us, or email the address below, and we take you off the list
- Keep your email out of ad uploads — we remove it from the lists we send to Google, X and LinkedIn
- Delete your work profile — we remove the MoltSets data from PostHog and Attio, and cancel a LinkedIn connection request that has not gone out
Email alerts@selltostate.com. We reply within 30 days. We do not require a lawyer's letter or a specific format — just tell us what you want.
All of these are manual today: you email us and a human does it. There is no self-serve account-deletion or data-export button. You can delete a workspace yourself from settings, but that removes the workspace's contents, not your account.
Security
Passwords are hashed. API keys are hashed. Traffic runs over HTTPS. Database access is limited to the people who need it.
We are not going to claim certifications we do not hold. We have no SOC 2 report and no ISO certification today. If that matters for your procurement process, ask us and we'll tell you exactly where we stand.
Children
Sell to State is a business tool. It is not for anyone under 16, and we do not knowingly collect their data.
Where data lives
Our servers and database run on Railway. Analytics data sits in PostHog's US cloud. If you are in the EU or UK, your data will be processed in the United States.
Changes to this page
If we change how we handle data, we update this page and change the "Last updated" date. For changes that meaningfully affect you, we email account holders.
Contact
Tell us what you need. A plain email is enough.