Privacy policy, cookie banners, and GDPR/CCPA for a small business site

Most small business owners have a privacy policy they copied from somewhere, a cookie banner they installed because a plugin suggested it, and no idea whether either one is doing anything useful. This guide covers what your site is actually collecting, which laws genuinely reach you, what a working cookie banner has to do, what belongs in a policy that describes your business rather than someone else's, and what to do the day a real data request lands in your inbox.

By ArdinGate LLC Published September 2026 ~16 min read

Do you legally need a privacy policy?

There is no single American law that says every website must have a privacy policy. That fact gets repeated a lot, usually by someone about to argue they do not need one. It is technically true and practically useless, because the obligation arrives through four separate doors and you only have to walk through one of them.

The first door is state law. California's Online Privacy Protection Act has required a conspicuously posted policy since 2004 from any commercial website that collects personally identifiable information about California residents. It has no revenue threshold and no size test. If a Californian can fill in your contact form, you are inside it. The newer generation of state privacy statutes all carry a similar notice requirement, and Nevada and Delaware have long had their own versions.

The second door is European law, which reaches across borders in defined circumstances covered in the GDPR section below. The third door is federal consumer protection law: the Federal Trade Commission treats a false or misleading statement about your data practices as a deceptive practice under Section 5 of the FTC Act, which is exactly why publishing an inaccurate policy is worse than publishing none.

The fourth door is the one nearly everyone has already walked through without noticing. The tools on your site require a policy contractually. Google's terms for Analytics and Ads require you to publish one and to disclose your use of cookies. Meta's business terms say the same for the Meta Pixel. Mailchimp, Stripe, Calendly, and every embedded booking widget you have ever installed carry equivalent clauses. You agreed to all of them at signup.

The practical test

If your site has a contact form, an email signup, an analytics tag, an embedded map, an embedded video, a chat widget, or a booking tool, you need a privacy policy. That covers essentially every business site built in the last decade. The interesting question is not whether you need one. It is whether the one you have describes your site or somebody else's.

What on your site is collecting data

Before you can write an accurate policy you need an inventory, and most owners underestimate theirs by a wide margin. Data collection on a website falls into three buckets, and the third one is where the surprises live.

CH A Data people hand you

Contact forms, quote requests, newsletter signups, booking details, checkout information.

You know about this
CH B Data the server records

Access logs with IP addresses, browser strings, timestamps, and referring pages.

Runs by default
CH C Data third parties take

Analytics, ad pixels, embedded maps and video, fonts, chat widgets, review displays.

The blind spot

The first bucket is obvious. Someone types their name and email into a form and presses send. You know that happened because the email arrives. Under every privacy law on earth that is personal information and it needs to be disclosed, retained on a defined schedule, and deleted on request. Nothing subtle here.

The second bucket surprises people. Every web server keeps access logs, and an IP address is personal data under GDPR and personal information under most of the US state statutes. You are not doing anything wrong by keeping logs, since security and abuse prevention are legitimate reasons to keep them, but you do need to say so and you do need a retention period rather than keeping them forever by accident.

In plain English

Personal data

Anything that can be tied back to a specific person, directly or by combining it with something else. Not just names and emails. Also IP addresses, device identifiers, and advertising cookies.

Processing

Doing anything at all with that data, including collecting it, storing it, looking at it, sending it somewhere, and deleting it.

Third party

Any company other than you whose code runs on your page. If their script loads, they see your visitor's IP address whether or not the visitor ever interacts with it.

The third bucket is where sites get into trouble, because third party code collects data on page load whether or not anyone touches it. An embedded YouTube video contacts Google before a visitor presses play. An embedded Google Map does the same. A hosted web font pulls from a font provider and hands over the IP address to do it, which is exactly what a German court found against a site owner in the widely cited Google Fonts decision. A live chat widget usually sets its own cookies. A review carousel from a third party platform loads their tracking with it.

Auditing this takes about twenty minutes and no special tools. Open your site in a private browsing window, open your browser's developer tools, look at the network tab, and reload the page. Every domain in that list other than your own is a third party receiving data about your visitor. Then check the storage tab for cookies. Most small business sites that have been running for a few years turn up between six and fifteen outside domains, and the owner can usually explain about half of them. If you want the same inventory for measurement specifically, the analytics guide walks through what each tag is actually doing.

GDPR: when a US business is actually in scope

GDPR is the source of most of the panic and most of the bad advice. The panic comes from the penalty ceiling, which is up to 20 million euros or 4 percent of global annual turnover, whichever is higher. The bad advice comes from consultants who tell every American business that a website reachable from Europe puts them in scope. That is not what the regulation says.

Article 3 extends GDPR to organisations outside the EU in two situations: when you offer goods or services to people in the EU, whether or not you charge for them, and when you monitor the behaviour of people in the EU. Recital 23 then says directly that the mere accessibility of a website from the EU is not sufficient to establish the first one. The test is whether it is apparent that you envisage offering services to people there.

Evidence you are targeting the EU

Prices shown in euros or pounds. A language your domestic customers do not speak. EU countries named in your shipping options or service area. Ads bought against EU audiences. EU phone numbers or addresses. A country selector that includes EU states as delivery destinations.

Not evidence on its own

Your site loads in Europe. Someone in Europe emailed you once. Your site is in English. You have a dot com domain. None of these establish intent to serve the EU market.

The monitoring branch

This one catches people who are not targeting the EU at all. If you run behavioural analytics or advertising trackers that profile visitors, and EU residents land on your pages, an argument exists that you are monitoring their behaviour. This is the realistic GDPR exposure for a typical US small business, and it comes from the tracking stack rather than the sales strategy.

So a roofing contractor in Tulsa with a five page site, a contact form, and no analytics is not in scope under any sensible reading. Add Google Analytics and a Meta Pixel and the picture gets muddier, because you are now profiling everyone who visits, including the occasional European. Sell a downloadable product to anyone with a card, and you are in scope without ambiguity.

If you are in scope, the obligations that bite hardest for a small business are the transparency notice, having a lawful basis for each purpose you process for, honouring access and deletion rights inside one month, and reporting a personal data breach to a supervisory authority within 72 hours of becoming aware of it. That last one is worth internalising, because 72 hours is not long enough to start figuring out what your site stores. Knowing that in advance is part of what basic website security buys you.

Rule of thumb

If you do not want to think about GDPR, the reliable move is not a banner. It is building a site that does not track visitors in the first place. No behavioural analytics, no advertising pixels, no third party embeds, and the monitoring branch of Article 3 has nothing to grab hold of.

CCPA and the rest of the US state laws

The United States has no comprehensive federal privacy law, so the obligations come state by state. Roughly twenty states have comprehensive consumer privacy statutes in force as of 2026, and more take effect each year. They rhyme with each other without being identical, which is the whole problem.

California came first and remains the strictest. The California Consumer Privacy Act, as amended by the California Privacy Rights Act, applies to a for profit business doing business in California that meets at least one of three thresholds.

Revenue test

Annual gross revenue above $25M. Straightforward, and it excludes almost every business reading this guide.

Volume test

Buying, selling, or sharing the personal information of 100,000 or more California consumers or households in a year. Note that sharing for cross context behavioural advertising counts, which is how a site with heavy ad traffic and advertising pixels can trip this without selling anything.

Revenue-share test

Deriving 50% or more of annual revenue from selling or sharing personal information. Aimed at data brokers.

Statutory penalties under CCPA start at $2,500 per violation and rise to $7,500 for intentional violations or violations involving a minor, with the California Privacy Protection Agency adjusting those figures for inflation. Per violation means per consumer, which is how the arithmetic gets alarming quickly for a company that clears the thresholds.

Most small businesses clear none of the three tests and are simply out of scope in California. That is a real answer and you are allowed to rely on it. Two things stop it from being the end of the story.

First, the other states set their own bars. The common pattern, which Virginia established and Colorado, Connecticut, and most of the rest copied, is 100,000 residents' data in a year, or 25,000 residents' data combined with deriving a meaningful share of revenue from selling it. Florida's threshold is enormous and aimed at large platforms. Texas went a different way entirely: it applies to anyone doing business in Texas who processes personal data and does not qualify as a small business under the federal Small Business Administration definition, with no revenue or volume floor. If you are genuinely an SBA small business you are outside it, but the test is your size and not your data volume, which is a meaningfully different question.

Second, the rights themselves are converging even where the thresholds differ. Access, deletion, correction, portability, an opt out of targeted advertising and of the sale or sharing of data, opt in consent for sensitive categories, and a ban on retaliating against someone for exercising any of them. If you decide to honour those rights voluntarily, you have built a posture that satisfies most states at once, and you have removed the need to re-audit your obligations every time another legislature passes a bill.

One mechanism deserves specific attention: the Global Privacy Control. It is a signal a visitor's browser sends automatically to say they are opting out of the sale and sharing of their information. California and Colorado require covered businesses to honour it, and it arrives silently in the request headers rather than through your banner. A business that answers banner clicks but ignores GPC has an opt out mechanism that only works for people who did not bother to configure one. Our own do not sell or share page exists for exactly this reason, even though we do not sell anything.

What belongs in your privacy policy

A privacy policy is not a legal shield. It is a factual statement about how your business handles data, and its usefulness depends entirely on being true. The clause list below is the floor. Getting the list right is the easy part. Keeping it accurate is the part that actually fails.

  • What you collect, by category. Contact details, payment information, booking details, device and usage data, and anything you infer. Categories rather than an exhaustive field list.
  • Where it comes from. Directly from the visitor, automatically from their browser, or from a third party such as an advertising platform or a lead source.
  • Why you collect it. One stated purpose per category. Under GDPR you also name a lawful basis for each: consent, contract, legal obligation, or legitimate interests.
  • Who you disclose it to. Categories of recipients, and in practice it helps to name the actual vendors. Your host, your email provider, your payment processor, your analytics provider, your booking tool.
  • How long you keep it. A real schedule, per category. Form submissions for two years, server logs for 30 days, invoices for seven years because tax law says so.
  • What rights people have and how to use them. A working email address or form, not a mailing address that nobody checks. Say how long you will take to respond.
  • How you handle children's data. If your site is not aimed at children under 13, say so. COPPA is a separate federal statute with its own teeth.
  • Where the data goes geographically. If your host, your CRM, or your email provider is in another country, say so. International transfer disclosure matters under GDPR and increasingly under state law.
  • A last updated date and a change process. Undated policies read as abandoned, and a dated one is evidence of maintenance.

Now the part that fails. Almost nobody gets caught out by a missing clause. They get caught out because the policy describes a website that no longer exists. It mentions cookies the site stopped setting three years ago, says nothing about the booking system added last spring, promises deletion within 30 days when nobody has a process for deletion at all, and lists a privacy contact address that bounces because it belonged to an employee who left. Every one of those is a false statement about your data practices, and false statements about data practices are the FTC's actual enforcement lane.

This is why copying someone else's policy is a bad idea in a way that goes past the copyright problem. Copied text is a description of another company's vendors, retention periods, and legal bases, published under your name as though it were true. Template generators are better, but only as good as the inventory you fed them, and most people complete the questionnaire once at launch and never revisit it. Whichever route you take, the input is the inventory from the inventory section above, and the policy needs rechecking whenever the inventory changes.

Publish the policy at a stable, linkable address, link it from the footer of every page, and link it next to every form that collects information. You can see the pattern on our own privacy policy, and the same discipline applies to the other legal pages a site accumulates. Reviewing them is a normal part of what website maintenance includes, not a separate annual project.

When a data request arrives

Sooner or later someone emails to ask what you hold about them, or to demand you delete it. The requests are usually polite and rarely adversarial. What makes them stressful is that the deadline started running the moment the email arrived, and most owners spend the first two weeks working out where their data even lives.

The clocks are short and they differ. Under GDPR you have one month from receipt, extendable by two further months for genuinely complex requests provided you tell the person inside the first month. Under CCPA you must confirm receipt within 10 business days and substantively respond within 45 days, extendable by another 45 with notice. Most other US state laws land at 45 days with a 45 day extension. Assume 45 days and one acknowledgement inside 10 business days and you will satisfy nearly all of them.

  1. Log it the day it lands day 0

    Date received, who from, what they asked for, and which law they invoked if they said. One row in a spreadsheet is enough for a small business. Every deadline runs from receipt, not from the day you noticed the email under a pile of quote requests.

  2. Verify who you are talking to days 1–5

    You are obliged to verify, and equally obliged not to over-collect while doing it. Proportionality is the rule. For a newsletter unsubscribe, replying to the address on file is enough. For an account containing payment history, ask for confirmation of a detail only the account holder would know. Never demand a government ID for a low sensitivity request. Collecting sensitive identity documents to process a privacy request creates a new privacy problem of its own.

  3. Find every copy days 5–20

    This is the step that consumes the time. Your form submission inbox, your CRM, your email marketing list, your booking system, your accounting software, your payment processor, your support tool, and your backups. If you already built the data inventory, you know where to look. If you did not, this is where the 45 days goes.

  4. Apply the exemptions you are entitled to

    Deletion rights are not absolute. Records you must retain for tax, accounting, warranty, product safety, or legal defence purposes generally survive a deletion request, as do records needed to complete a transaction the person asked for. You do not delete a paid invoice because the customer asked you to. You do stop marketing to them, and you do say clearly what you kept and why.

  5. Act, then write back describing exactly what you did

    Specific beats vague. Say which systems you searched, what you found, what you deleted or exported, what you retained and under which exemption, and what happens next. A precise answer closes the matter. A vague one invites a follow up, and a follow up to a regulator is how a small request becomes a large one.

  6. Keep the record

    Store the request, your verification steps, what you did, and your response. Under GDPR you must be able to demonstrate compliance, and the same is true in practice under the state laws. The file is the proof, and it costs nothing to keep.

One thing worth deciding before a request arrives: whether you will honour requests from people outside the jurisdictions that legally cover you. Running two processes, one for Californians and one for everybody else, costs more than running one. Most small businesses find it cheaper and better for the relationship to answer everyone the same way, and it eliminates the need to work out where a requester was standing when they hit send. It is the same argument as keeping ownership of your own accounts: one clean arrangement is cheaper than several conditional ones.

Building a site so compliance stays cheap

Everything above gets cheaper or more expensive depending on decisions made when the site is built. Privacy compliance is mostly an architecture problem wearing a legal costume. Data you never collect cannot be breached, cannot be requested, cannot be deleted incorrectly, and does not need a paragraph in your policy.

Collect less

Every form field is a permanent obligation. If your quote form asks for a mailing address you never post anything to, delete the field. Data minimisation is an explicit GDPR principle and a practical risk reduction everywhere else.

Self-host what you can

Fonts served from your own server instead of a font CDN. A static map image instead of an embedded interactive map. A click-to-load thumbnail instead of an auto-loading video embed. Each swap removes a third party from the page and a disclosure from your policy.

Choose analytics deliberately

Server log analysis and cookieless analytics answer most small business questions: which pages get traffic, where it came from, what converts. If nobody is building retargeting audiences, cookie based analytics is a compliance cost with no return.

Set retention deliberately

Decide how long form submissions, logs, and backups live, and configure it once. A default of forever is a decision too, and it is the worst one available.

Own the stack

You cannot describe data flows you cannot see. A site whose code you own and whose host you control can be audited in an afternoon. A site assembled from twenty plugins whose vendors change their own data practices without telling you cannot.

That last point is the practical reason platform choice matters here. A page builder or plugin heavy stack loads third party code you did not choose and cannot inspect, and each plugin update can change what the page sends and to whom. That is a moving compliance target, and it is a large part of the argument in the WordPress versus custom comparison. A hand built site loads exactly what it was told to load, and the list of outside domains it contacts is a list you wrote on purpose. Our own custom PHP builds start at $1,200 for a single page and $2,800–$5,000 for a small multi page site, and a substantial part of what that buys is an inventory you can actually enumerate.

Where you host matters too, for two reasons that are easy to miss. Server log retention is a privacy setting whether or not anyone treats it as one, and the location of the server is a disclosure under GDPR. Managed hosting where somebody sets and documents both is worth having: our hosting plans start at $60/mo flat, and log retention and backup lifetime are configured deliberately rather than left at whatever the default was. If you would rather see how the numbers add up across a build, pricing and the cost guide break it down.

If you take one build decision away from this guide, make it this one: sites that collect and share the least are the cheapest to keep compliant, the fastest to load, and the least damaging when something goes wrong. Privacy, speed, and security stop being three separate projects once you notice they are the same decision viewed from three angles. The same is true of accessibility compliance: it is far cheaper as a build standard than as a retrofit. And if you are launching soon, the legal pages belong on your launch checklist alongside the redirects and the analytics, not in a follow up you never get to.

Not legal advice

This guide explains how these requirements work in practice from a web development perspective. It is not legal advice and does not create a lawyer client relationship. If you handle health data, financial data, children's data, or biometric data, or if you have received a demand letter or a regulator's inquiry, talk to a privacy lawyer in your jurisdiction.

Key takeaways

  • Almost every business site needs a privacy policy, not because one federal law demands it, but because state law, the FTC's deception standard, and the terms of the tools you already installed all require one independently.
  • Inventory before you write. Open your site in a private window, check the network tab, and list every outside domain it contacts. Most sites contact between six and fifteen, and most owners can explain about half.
  • GDPR reaches US businesses that target the EU or monitor EU visitors' behaviour. Being reachable from Europe is explicitly not enough. Behavioural tracking is the branch most likely to catch a small US business.
  • CCPA has three thresholds and most small businesses clear none of them. Texas is the outlier: it applies to anyone processing personal data who is not an SBA small business, with no revenue floor.
  • A cookie banner only means something if the trackers wait for the answer. Reject must be as easy as accept, nothing may be pre-ticked, and the Global Privacy Control browser signal must be honoured where state law requires it.
  • Policies fail on accuracy, not on missing clauses. A policy describing tools you removed and omitting tools you added is a false statement about your data practices, which is precisely the FTC's enforcement lane.
  • Data requests run on short clocks: one month under GDPR, 45 days under most US state laws with acknowledgement in 10 business days. The time goes on finding the data, which is why the inventory matters.
  • The cheapest compliance posture is architectural. Collect less, self-host what you can, choose analytics deliberately, set real retention periods, and own a stack you can actually enumerate.

Website privacy questions

Does a small business website legally need a privacy policy?

In practice, yes, if your site collects anything at all. There is no single US federal law that says every website needs a policy, but the requirement arrives through several doors at once. California's Online Privacy Protection Act has required a conspicuously posted policy since 2004 for any commercial site that collects personally identifiable information from California residents, and that includes almost every site with a contact form. GDPR requires a transparency notice from anyone processing the personal data of people in the EU. The newer US state privacy laws all require a notice at or before the point of collection. On top of the law, the services you have already installed require one contractually: Google Analytics, Google Ads, Meta Pixel, Mailchimp, and Stripe all oblige you to publish a privacy policy as a condition of using them. A contact form and Google Analytics are enough to put you in scope. The realistic question is not whether you need a policy but whether the one you have describes what your site actually does.

Does GDPR apply to my US small business website?

Only if you are targeting people in the EU or monitoring their behaviour, and being reachable from Europe is not the same thing as targeting Europe. GDPR Article 3 extends to businesses outside the EU when they offer goods or services to people in the EU, or track what those people do online. Recital 23 says explicitly that the mere accessibility of your website from the EU is not enough on its own. Evidence of targeting is things like listing prices in euros, offering a language your local customers do not speak, naming EU countries in your shipping or service area, or running ads aimed at EU users. A plumber in Ohio with a five page site and a contact form is almost certainly out of scope, even if a Berlin resident can load the page. An online shop that ships to Ireland is in scope, no argument. The awkward middle case is analytics and advertising trackers, because behavioural tracking of EU visitors can pull you into scope by itself. If you are unsure and you want a clean answer, the cheapest fix is to run a site that does not track visitors at all.

Am I covered by CCPA if I have no California customers?

Probably not, because CCPA and its successor CPRA only apply to businesses that clear a threshold. You are in scope if you do business in California and meet at least one of three tests: annual gross revenue above 25 million dollars, buying selling or sharing the personal information of 100,000 or more California consumers or households in a year, or deriving 50 percent or more of your annual revenue from selling or sharing personal information. Most small businesses clear none of those. But two cautions apply. First, the sharing test counts more than you would expect, because sharing for cross context behavioural advertising counts, and advertising pixels are how most sites unknowingly do that. Second, the other state laws have their own thresholds, and Texas in particular applies to anyone doing business in Texas who processes personal data and does not qualify as a small business under the federal Small Business Administration definition, with no revenue floor at all. Being out of scope in California is not the same as being out of scope everywhere.

Do I need a cookie banner?

You need one if your site sets cookies or similar trackers that are not strictly necessary to deliver the page, and you have visitors covered by a law that requires consent for them. Strictly necessary means things like a session cookie that keeps someone logged in, a shopping cart, or a security token. Those never need consent. Analytics cookies, advertising pixels, embedded video that sets tracking cookies, heat mapping tools, and chat widgets all fall outside that exception. Under the EU ePrivacy rules those trackers require consent before they are set, not after. Under the US state laws the requirement is closer to a clear opt out for sale or sharing, plus honoring the Global Privacy Control browser signal. The important structural point is that a banner is only meaningful if the trackers genuinely wait for it. A banner sitting on top of a page whose scripts have already fired is worse than no banner, because it documents that you knew consent was required and shipped a version that ignored the answer.

What has to be in a privacy policy?

At minimum: what categories of personal information you collect, where you collect it from, why you collect it, who you disclose it to and in what categories, how long you keep it, what rights people have and exactly how to exercise them, how you handle requests from children, and a contact route that a real person monitors. If GDPR applies you also need to state your legal basis for each processing purpose, name your representative if you have one, and mention the right to complain to a supervisory authority. If a US state law applies you need a notice at or before collection and, if you sell or share data, a clearly labelled opt out link. The failure mode is almost never a missing clause. It is a policy that describes a website other than yours: it mentions cookies you do not set, omits the booking tool you added last spring, and lists a support address that bounces. Accuracy is the compliance requirement that regulators and plaintiffs actually test.

Can I just copy a privacy policy from another website?

Copying one is both a copyright problem and a compliance problem, and the compliance problem is the one that costs you money. A privacy policy is a factual statement about your business. Copied text describes someone else's data flows, someone else's vendors, and someone else's retention periods. Publishing it means publishing statements about your business that are not true, which in the United States is the exact shape of an unfair or deceptive practice under Section 5 of the FTC Act and under most state consumer protection statutes. Generated policies from a template tool have the same weakness in a milder form: they are only as accurate as the inventory you fed the generator, and most people fill the form out once and never revisit it. The practical alternative is to inventory what your site actually loads, write or generate a policy from that inventory, and re-check the inventory whenever you add a tool to the site.

What do I do when someone asks me to delete their data?

Log it the day it arrives, because every clock starts from receipt and not from when you noticed. Under GDPR you have one month to respond, extendable by two more for complex requests if you tell the person inside the first month. Under CCPA you must confirm receipt within 10 business days and substantively respond within 45 days, extendable by another 45 with notice. Then verify who you are talking to, using an amount of proof proportionate to the sensitivity of the data, and never collect a government ID for a request about a mailing list subscription. Find every copy: your form inbox, your CRM, your email marketing tool, your booking system, your accounting records, your backups. Apply the exemptions you are entitled to, because records you must keep for tax, warranty, or legal defence reasons generally survive a deletion request. Then act, write back describing exactly what you did, and keep a record of the whole exchange. The record is what proves compliance later.

How much does privacy compliance cost for a small business site?

Far less than most owners expect, provided the site is built to collect very little. A brochure site with a contact form, no analytics, no advertising pixels, and no embedded third party widgets needs an accurate written policy and nothing else: no consent platform, no subscription, no banner. That is a one time writing exercise. Costs appear when the site takes on data. A consent management platform runs roughly 10 to 100 dollars a month at small business volume. A template policy generator subscription is a similar order of magnitude. Lawyer drafted policies for a simple site commonly land in the high hundreds to low thousands. The expensive path is the one where a site accumulates a dozen third party scripts over three years and nobody tracks what they do, because then compliance starts with a discovery project. The cheapest possible posture is a site that does not collect what it does not need, which is a build decision more than a legal one.

Not sure what your site is collecting?

Send me your URL and I'll tell you what loads on your pages, which outside companies get your visitors' data, and what your policy would need to say to be accurate. If the answer is that half of it can just be removed, I'll tell you that too.

Request a privacy review