Privacy & Cookie Compliance Scanner | GDPR / CCPA Banner Audit avatar

Privacy & Cookie Compliance Scanner | GDPR / CCPA Banner Audit

Pricing

Pay per usage

Go to Apify Store
Privacy & Cookie Compliance Scanner | GDPR / CCPA Banner Audit

Privacy & Cookie Compliance Scanner | GDPR / CCPA Banner Audit

Scan public privacy pages and cookie banners for GDPR/CCPA compliance signals. Returns one clean compliance summary row per site with banner detection, consent framework identification, policy freshness, and recommended actions.

Pricing

Pay per usage

Rating

0.0

(0)

Developer

太郎 山田

太郎 山田

Maintained by Community

Actor stats

0

Bookmarked

1

Total users

0

Monthly active users

a day ago

Last modified

Share

Privacy & Cookie Compliance Scanner

Scan public privacy pages and cookie banners for GDPR/CCPA compliance signals. Returns one clean compliance summary row per site with cookie banner detection, consent framework identification, privacy policy freshness, snapshot-based drift detection, and recommended actions.

What it does

For each site you provide, the actor:

  1. Fetches the homepage — detects cookie banners and consent management platform (CMP) signatures (OneTrust, Cookiebot, TrustArc, Osano, Didomi, iubenda, IAB TCF, and more)
  2. Fetches the privacy policy page — confirms reachability and extracts the "Last Updated" date
  3. Fetches the cookie policy page — confirms reachability (auto-discovered from homepage links if not supplied)
  4. Compares against the previous run snapshot — flags changes in banner presence, policy URL, policy date, and consent signal set
  5. Produces one compliance summary row per site with complianceStatus, cookieBannerDetected, consentSignals, policyUpdatedAt, changedSinceLastRun, recommendedActions, and raw evidence

Use cases

  • Recurring compliance monitoring — schedule daily or weekly runs to catch banner removals, CMP changes, or policy date regressions before they become audit findings
  • Agency portfolio audits — scan all client sites in one run, export results as a dataset for dashboards or handoff reports
  • Pre-launch checklists — verify cookie banner, privacy policy, and cookie policy are in place before go-live
  • Post-deploy regression watch — webhook delivery for immediate alerts when compliance signals change after a release

Inputs

FieldTypeRequiredDefaultDescription
sitesarrayList of sites to scan. Each entry needs homepageUrl; privacyPolicyUrl and cookiePolicyUrl are auto-discovered if omitted.
sites[].homepageUrlstringFull URL of the homepage to scan for the cookie banner.
sites[].privacyPolicyUrlstringautoDirect URL of the privacy policy page. Auto-discovered from footer links if not supplied.
sites[].cookiePolicyUrlstringautoDirect URL of the cookie policy page. Auto-discovered from footer links if not supplied.
sites[].regionstringExpected region (EU, US, etc.) — used to apply stricter banner checks for GDPR jurisdictions.
sites[].consentModestringOptional expected consent mode tag (e.g. CCPA) for evidence labelling.
deliverystringdatasetdataset writes results to the Apify dataset; webhook POSTs the payload to webhookUrl.
webhookUrlstringRequired when delivery is webhook.
snapshotKeystringprivacy-cookie-compliance-snapshotsKey for persisting run-to-run snapshots. Keep stable for recurring drift detection.
concurrencyinteger2Parallel site scans (1–10).
batchDelayMsinteger500Pause between batches in milliseconds.
requestTimeoutSecsinteger20Per-request timeout (5–60s).
followRedirectsbooleantrueFollow HTTP redirects before scanning.
dryRunbooleanfalsePreview results without saving snapshots, dataset rows, or sending webhooks.

Output

One dataset row per site. Key fields:

FieldTypeDescription
siteUrlstringHomepage URL from input.
complianceStatusstringcompliant | partial | non_compliant | unknown
executiveSummarystringPlain-text one-line summary for dashboards and reports.
cookieBannerDetectedbooleanWhether a cookie consent banner or CMP was found on the homepage.
privacyPolicyDetectedbooleanWhether a reachable privacy policy page was found.
cookiePolicyDetectedbooleanWhether a reachable cookie policy page was found.
policyUpdatedAtstring | null"Last Updated" date extracted from the privacy or cookie policy page.
consentSignalsstring[]Named CMPs detected (e.g. ["OneTrust", "IAB TCF"]).
recommendedActionsstring[]Prioritised, human-readable action items.
changedSinceLastRunboolean | nulltrue if any compliance signal changed; null on first run.
evidenceobjectRaw evidence: status codes, discovered URLs, banner match details, region, consent mode.
checkedAtstringISO 8601 timestamp of when the scan ran.

Quickstart

  1. Open the actor and click Try for free
  2. Under Sites to scan, keep the default or paste your own site's homepageUrl
  3. Click Start — you'll have a compliance summary row in seconds
  4. Add a schedule to repeat the scan daily or weekly for drift detection

OneTrust · Cookiebot · TrustArc · Osano · iubenda · CookieYes · Quantcast Choice · Didomi · Usercentrics · Sourcepoint · CIVIC Cookie Control · Cookiefirst · Termly · IAB TCF · CCPA USP API · Google Consent Mode · Generic banner keywords

Notes

  • The actor uses lightweight HTTP fetching (no browser/JavaScript rendering). Dynamic SPAs that inject the cookie banner only after JS execution may show cookieBannerDetected: false even if a banner exists visually. For JS-rendered banners, supplement with a Playwright-based actor.
  • changedSinceLastRun requires at least two runs with the same snapshotKey.
  • No external dependencies beyond Node.js 18+ built-in fetch.