Privacy Policy
Last updated October 15, 2026
The short version
- Sheets are built when a customer asks and streamed back. We don't keep the rows: not the names, emails or phone numbers found, and not the lists customers upload.
- We keep public facts about companies (what a company's website, DNS and public registries say) and company email formats, so repeat lookups are fast, and publish some of them as free research pages. Neither identifies a person.
- To opt out, send any email to opt.out@programmable.info from the address you want removed. No subject or message is needed. Or use the form at /opt-out. We keep only a one-way hash of the address.
- No advertising cookies. If you choose "Accept all", Google Analytics counts visits to our website; otherwise it isn't loaded. We don't use anyone's data to train AI models.
Programmable is operated by Programmable, LLC, 3607 10th St NW, Washington, DC 20010, USA ("we", "us"). This policy covers two groups: our customers, who use Programmable to look up companies and the people who work there, and the people whose business details Programmable may return. Questions: support@programmable.you.
Our two roles
For your account (sign-in, billing, settings, usage), we decide how data is used and are responsible for it. When we process lists you upload, or call providers with your own keys, we act for you as your service provider (or processor) under the Terms and, once you accept it, our DPA. When Programmable finds business contact details from its own sources (public websites and web search) and returns them to a customer, we are responsible for that and follow this policy, including the opt-outs below.
Customers: what we collect and keep
- Account: your email, name (optional), sign-in records, and the terms version you accepted, when, and from what IP address and browser. Passwords are handled by our sign-in service; we never see them.
- Billing: purchases, plan, seats and balance. Card details go to Stripe and never reach us.
- Usage receipts: for each sheet, its size, how many rows succeeded, credits and AI spend, and which API key ran it. Not the rows themselves.
- Settings you choose: API keys (stored as hashes), your own provider keys and connected-app tokens (encrypted), webhook address, AI and sheet defaults, presets, saved searches and AI questions.
- Share links you create hold the list of company domains in the link, so it can be rebuilt when opened.
- Monitors: for each watch list, the company domains, the latest company-level snapshot of each (tech stack, hiring, pricing, size, leadership count) and the changes found between checks. A monitor stores no names, emails or phone numbers.
- Teams: which accounts are members of your team, with their email and role.
- Referrals: if you sign up through someone's referral link, which account referred you (from the referral code kept in a cookie for 90 days, only if you chose "Accept all" on the cookie notice), so they can be credited for your purchases for 12 months. The referrer sees only how many people joined and became paying through their link and the credits they earned, never your name or email.
- Affiliates: if you apply to the affiliate program, your name, website, where you'll promote it, and once approved your code, your Stripe payout account's id, the commissions it earns and the payouts made. Affiliates see how many customers used their code and what they earned, never who those customers are. Customers who use a code are recorded against it so the affiliate can be paid. Payouts go through Stripe Connect: Stripe collects the affiliate's identity, bank and tax details on its own pages and keeps them; we never receive them.
What a sheet processes, and doesn't keep
To build a sheet we read the companies' public web pages, DNS records and public registries, and, for people sheets, look for a person's professional profile using public search. We don't construct or probe people's email addresses: a work email is returned only when it's in the customer's list, published on the company's own site, or found or confirmed by a provider the customer connects; otherwise the sheet shows the company's email formats (for example "first.last 82%") and how often each is seen. If you connect your own accounts with data providers (for example Apollo, Hunter, People Data Labs) or AI providers (for example Anthropic, OpenAI, Google), your list is sent to them under your account and their terms. Results stream to you, and to your webhook if you set one, and are then discarded. If you connect a CRM or Shopify on the Integrations page (a direct Google Sheets connection is coming soon), finished rows are also sent there under your own account and its terms, directly over OAuth (or through our self-hosted connection service, Nango, for older connections); the access tokens are stored encrypted, and we don't keep a copy of the rows. If you switch on "search the web" for an AI column, the page text found is sent to your AI provider along with your question. The Google Sheets add-on stores your API key in your own Google account, not with us. Page text, AI prompts and answers, and webhook payloads are not stored.
Public research pages
We publish public pages built from the company facts above: email formats by company, websites by technology and site speed by platform, and the home page's try-one-company preview. They name companies and their websites (for technology and speed, only sites in the Tranco list of the top million), with counts and test results, and never name or show details of any person. A company that would rather not be listed can email support@programmable.you from its domain; it's then left off these pages and out of results, as a company opt-out below.
Notice at collection (California and other states)
The categories of personal information we collect, where they come from, why, how long we keep them and who receives them. We don't collect sensitive personal information other than account credentials, and we use those only to provide the service.
| Category | Examples | Source | Purpose | Kept for | Disclosed to |
|---|---|---|---|---|---|
| Identifiers | Name, work email, account ID, IP address | You; your browser | Running your account, security, billing | While your account is open, then 30 days | Our subprocessors (service providers) |
| Commercial information | Purchases, plan, credits, usage receipts | You; Stripe | Billing, credits, tax and accounting | Up to 7 years (tax rules) | Stripe; our accountants |
| Internet activity | Sign-ins, API requests, error reports and website analytics (both only if you allow them) | Your browser and API calls | Security, abuse prevention, fixing problems, measuring visits to our website | Up to 90 days; error reports 30 days; analytics up to 14 months | Cloudflare, Sentry, Google (service providers) |
| Credentials | Your account sign-in; your own provider keys and connected-app tokens (encrypted) | You | Signing you in; calling services you connect | Until you remove them or close your account | Only the service each key or token is for |
| Professional information about people customers look up | Name, job title, employer, work email, work or mobile phone, public professional profile URL | Public websites and registries, providers customers connect, the lists customers upload | Returning the sheets customers ask for | Not stored: streamed to the customer and discarded | The customer who asked, and the destinations that customer chooses |
| Opt-out records | A one-way hash of an email or phone number; a company domain | The person or company opting out | Honouring the opt-out on every future lookup | As long as we operate | No one |
People whose details may be returned
If you work at a company, Programmable may return your name, job title, employer, public professional profile and work email or phone number to a customer who asks about you or your company, for business-to-business communication such as sales, partnerships and recruiting. We don't keep a database of people: nothing about you is stored after a request, except an opt-out if you make one. We use only public information, and we never return sensitive information. We don't build anyone's email address from their name: without the customer's own provider, a sheet shows only the company's email formats and how often each is seen.
Customers pay us to run lookups, so under some state laws (for example California's) returning your details to them may count as a "sale" of personal information even though we don't keep it. We don't share personal information for cross-context behavioural advertising. You can opt out of having your details returned (including any "sale") at any time:
- By email: send any message to opt.out@programmable.info from the address you want removed. If your email provider confirms the message really came from that address (almost all business mail does), you're opted out straight away and we'll reply to confirm. Otherwise we'll email you a one-click link to confirm.
- By form: enter an email or phone number at /opt-out.
- For a whole company (every address at a domain), email support@programmable.you; we confirm with someone at that domain first.
An opt-out applies across Programmable: sheets, people searches, leadership lists, webhooks and pushes to customers' CRMs and spreadsheets. It works for the future; it can't recall rows a customer received before, but our Terms require customers to honour opt-out and deletion requests in their own systems. We keep a hash of your address (not the address) so the opt-out keeps working.
Where the service is offered
Programmable is a United States service, and all processing happens in the United States. It is for business data about companies and the people who work at them outside the European Union, the European Economic Area and the United Kingdom. We don't look up or return details of people located there, or of people at companies based there; requests for them are skipped. Public facts about companies based there (registration, website, filings) may still be returned. Customers must not upload lists of people located there.
Who else processes data
- Our service providers: OVHcloud (our servers, database and sign-in; United States, Virginia), Backblaze (encrypted database backups; United States), Cloudflare (network, security, bot protection and inbound opt-out email), Stripe (payments and subscriptions), Zoho (company email, including the opt-out mailbox), Resend (transactional email such as sign-in codes, invites and opt-out confirmations), Supabase and Hetzner (our previous database and servers, being retired; their copies are deleted by October 31, 2026), Serper, Brave or Jina (web search and reading public web pages; they receive the search terms and page addresses only), logo.dev (company logos), Sentry (error reports, with keys removed; in your browser only if you allow it) and Google Analytics (visits to our website, only if you choose "Accept all": pages viewed (with campaign tags, never the rest of the address), approximate location and device; Google signals and ad features are off). Our DPA lists them.
- Public data sources queried at request time (for example DNS resolvers, domain registries, Wikidata, the SEC, the NPI Registry and other government registries, Google PageSpeed and the Chrome UX Report, the Tranco list of popular sites, the Internet Archive, GitHub).
- Providers and destinations customers connect with their own keys or accounts (data providers, SEO tools, AI providers, Apify actors, CRMs, Shopify and, once available, Google Sheets), under the customer's agreements with them.
- Authorities, when the law requires it, and a buyer or successor if our business is sold or merged (bound by this policy).
Retention and security
Retention for each category is in the table above. Account records are deleted within 30 days of closing an account, except billing records, which we keep as long as tax and accounting rules require (typically up to seven years). Company facts are refreshed or expire on a schedule. Opt-outs are kept as long as we operate. Data is encrypted in transit; secrets, provider keys and connected-app tokens are encrypted at rest; access to production systems is limited to the people who run them. No system is perfectly secure; if a breach affects your personal information, we'll tell you as the law requires.
Deleting your account
You can delete your account yourself in Settings. This removes your profile, credits, receipts, API keys, provider keys, connected-app tokens, monitors, share links and team membership, and your sign-in with our authentication provider. Billing records are kept as the law requires. Opt-out hashes are kept so the request keeps working, and a hash of your email and sign-in id (not the address itself) so sign-up credits aren't granted twice.
Your rights
Depending on where you live (including California, Colorado, Connecticut, Delaware, Indiana, Iowa, Kentucky, Maryland, Minnesota, Montana, Nebraska, New Hampshire, New Jersey, Oregon, Rhode Island, Tennessee, Texas, Utah and Virginia), you may have the right to:
- know what personal information we have collected or returned about you, and get a copy in a portable format;
- have it corrected or deleted;
- opt out of its sale, of targeted advertising and of profiling (we do no targeted advertising or profiling with legal effects);
- limit the use of sensitive personal information (we use it only to provide the service);
- not be treated differently for using these rights.
How to ask: use the opt-out email or form above, or email support@programmable.you. To protect you, we verify requests by confirming control of the email address (or phone number) concerned; customers can also ask from their signed-in account. An authorized agent can ask for you with your signed permission, and we may ask you to confirm your identity directly. We reply within 45 days, or tell you if we need up to 45 more.
Appeals: if we decline your request, you can appeal by replying to our answer or emailing support@programmable.you with "Appeal" in the subject within 30 days. We'll answer within 45 days (60 in Colorado). If you're still not satisfied, you can contact your state's attorney general.
Global Privacy Control and Do Not Track: we don't sell or share data about visitors to our website and have no advertising trackers. If your browser sends Global Privacy Control, we don't load Google Analytics even if you chose "Accept all". To stop your details being returned in sheets, use the opt-out email or form, since a browser signal can't tell us which email address is yours.
Children
Programmable is for businesses and isn't directed at anyone under 18. We don't knowingly collect information about children; if you think we have, email support@programmable.you and we'll delete it.
Changes
We'll post changes here with a new date and, for material ones, email customers and ask them to accept the updated version in the app before it applies to them.