=== ACookies === Contributors: accomplicehq Tags: cookie consent, cookie banner, google consent mode, cookie scanner, woocommerce Requires at least: 6.6 Requires PHP: 7.4 Tested up to: 7.1 Stable tag: 1.2.2 License: GPLv2 or later License URI: https://www.gnu.org/licenses/gpl-2.0.html Cookie consent without the complexity. Customizable banners, Consent Mode v2, 26 languages, scanning and cookie policies. == Description == **Cookie consent for WordPress, without the complexity.** Give visitors clear cookie choices and manage your banner, scans, consent records and policy in one place, inside WordPress. = Clear choices for visitors. Less work for you. = * **Make the banner your own.** Adjust wording, colors, borders, positioning and buttons to match your website, without writing code. * **Put visitors in control.** Give visitors Accept, Reject and Customize options, plus a way to change their choices later. * **Welcome visitors in their language.** Choose from 26 visitor languages, with WPML matching, right-to-left layouts and editable copy. * **Connect consent to your Google tools.** Keep Google consent signals aligned with visitor choices through built-in Consent Mode v2, with GA4 and Google Tag Manager support. * **Spend less time sorting cookie data.** Find cookies and providers with an optional scan. Automatic classification and editable, AI-assisted suggestions help reduce manual work. * **Publish cookie information without building tables.** Add the Cookie Policy block to a WordPress page and publish information from your saved cookie inventory. * **Keep a local record of choices.** See recent consent choices, policy versions and languages in WordPress, with records stored in your database. = Start free. Grow when you need to. = Free includes all the essentials above, with no paid license and no visitor or page-view limits. The optional Free scanner includes one manual scan of up to five public pages per UTC calendar month. Consent records are kept for up to 30 days, with a maximum of 1,000 entries. For larger sites and more frequent monitoring, [ACookies Pro](https://acookies.com/pricing/) adds scans of up to 500 pages, up to two scans per site per UTC calendar day, and daily or weekly scheduling. Choose a license for 1, 5 or 25 WordPress sites, with updates and email support included. = Set up at your own pace = Follow the guided setup to choose your settings, run or skip a scan, prepare your policy and preview the banner before it goes live. Script rules can delay selected WordPress scripts until the relevant consent. Tags added directly to pages or loaded dynamically may need separate setup. See the [WordPress setup guide](https://acookies.com/wordpress-google-consent-setup) for help configuring your tags. == External services == = ACookies managed scanner = The managed scanner is optional and disabled by default. When an administrator enables it and accepts the linked data-processing terms, the plugin sends: * A random installation identifier. * The public WordPress site origin. * Up to five selected public page URLs on Free. * The plugin version, default language, and enabled languages. The service loads those public URLs in an isolated browser and returns cookies, domains, providers, script URLs, and related evidence. Site-scoped access tokens are used instead of a credential shared inside the plugin. After this same scanner opt-in, the plugin may send deduplicated activation, onboarding-complete, first-scan and policy-published milestone events with its plugin version. The service associates these events with a one-way hash of the installation identity. These events contain no visitor data and are not sent before scanner opt-in. Server-side scan job data is scheduled for deletion after seven days. Results copied into WordPress remain in the site owner's database. Service documentation and terms: * [ACookies scanner data and external services](https://acookies.com/external-services) * [ACookies privacy notice](https://acookies.com/privacy) * [ACookies service terms](https://acookies.com/terms) = OpenAI = Managed scans on both Free and Pro may use server-side AI enrichment when enabled by the service operator. This may send detected cookie names, domains, paths, categories, relevant script evidence, verified references, and requested languages to OpenAI. Cookie values, page content, WordPress passwords, and private administrator data are not intentionally sent. Classifications are accepted only when they match a supplied verified reference; uncertain results need administrator review. Descriptions remain editable. * [OpenAI privacy policy](https://openai.com/policies/privacy-policy/) * [OpenAI Services Agreement](https://openai.com/policies/services-agreement/) = Google Analytics and Google Tag Manager = These optional integrations load Google's tag script from www.googletagmanager.com only when an administrator configures a GA4 measurement ID or GTM container ID. In the default basic consent mode, the plugin loads GA4 after analytics consent and GTM after analytics or marketing consent. If the administrator explicitly enables advanced consent mode, Google tags can load before consent with denied storage defaults and may send cookieless pings. No Google tag is loaded by these integrations when no ID is configured. Loading a tag contacts Google with the configured measurement/container ID, the visitor's IP address, browser request headers, and page/request information. Tags receive the visitor's consent state. Google Analytics and tags configured in a GTM container can send additional analytics or advertising events and use cookies according to their configuration and the visitor's consent. Site owners must configure and review their tags; ACookies does not control every tag placed in a container or added by another plugin. Google Consent Mode commands, including ACookies' vendor developer ID, are queued locally by the consent bridge. Queuing those commands alone does not contact Google. The built-in Facebook URL rules only identify scripts already registered by the site; ACookies does not load Meta/Facebook scripts itself. * [Google privacy policy](https://policies.google.com/privacy) * [Google Terms of Service](https://policies.google.com/terms) * [Google Analytics terms](https://marketingplatform.google.com/about/analytics/terms/us/) * [Google Tag Manager terms](https://www.google.com/analytics/terms/tag-manager/) = Freemius = The Premium distribution bundles the Freemius SDK for optional product telemetry, account and license handling, paid checkout, and Premium updates. Freemius presents its own opt-in permissions inside WordPress. The WordPress.org Free distribution does not include or load that SDK and uses WordPress.org for updates. Free requires neither a paid license nor a Freemius account. * [Freemius privacy policy](https://freemius.com/privacy/) * [Freemius service terms](https://freemius.com/terms/) == Installation == 1. In WordPress, open Plugins > Add New, search for ACookies, then install and activate the Free plugin. You can also upload the plugin ZIP through Plugins > Add New > Upload Plugin. No paid license or Freemius account is required to use Free. 2. Open Settings > ACookies. A fresh install remains inactive while you configure it. 3. Choose consent defaults and the visitor language. 4. Read and optionally accept the managed scanner terms, then run or skip the first scan. If you used the free generator, paste its seven-day import code in step 3. 5. Review cookies needing attention and script rules, create or select a Cookie Policy page, preview the banner, and activate ACookies. 6. Test Accept, Reject, Customize, withdrawal, mobile, keyboard navigation, and relevant tags in a private browser session. == Frequently Asked Questions == = What can I do with ACookies Free? = Free includes a customizable consent banner, Google Consent Mode v2, 26 visitor languages, cookie review, local consent records and a Cookie Policy block. It also includes a monthly five-page scan. No paid license is required. = Are there visitor or page-view limits? = No. ACookies Free has no visitor or page-view limit, so you can keep showing your consent banner as your audience grows. The optional scanner has its own page and frequency limits. = Can I match the banner to my website? = Yes. Adjust colors, borders, rounded corners, position and button styles from the Design screen in WordPress. You can also use your theme's button styles and edit the banner wording without changing code. = Does ACookies support Google Consent Mode v2? = Yes. ACookies sets Google consent defaults and updates the signals when a visitor makes a choice. You can configure GA4 or Google Tag Manager in the plugin settings and choose basic or advanced consent mode. = How does cookie scanning help me? = The optional scanner finds cookies on your public pages and brings the results into WordPress. Known cookies are classified automatically, while uncertain findings are flagged for your review. Free includes one manual scan of up to five public pages per UTC calendar month. = Can I create a cookie policy from my scan results? = Yes. Review cookie categories and descriptions in ACookies, then add the Cookie Policy block to a new or existing WordPress page. The block uses your saved cookie inventory, so you can publish the cookie information without building a table by hand. = Can the banner use my visitors' language? = Yes. ACookies includes 26 visitor languages and support for right-to-left layouts. It follows the current page language when WPML is active, or matches the visitor's browser language with a fallback to your chosen default. You can edit the wording for each language. = Can visitors change their choices later? = Yes. Add a Cookie settings link using the ACookies preferences shortcode so visitors can reopen their choices, change categories or withdraw optional consent whenever they need to. = Can I review the setup before the banner goes live? = Yes. A fresh installation keeps the public banner inactive while the guided setup helps you choose settings, run or skip a scan, review cookies and prepare your policy. Preview the banner, then enable it when you are ready. = Can I keep a record of visitor choices? = Yes. ACookies stores consent records in your WordPress database, including category choices, policy version and language. Records are retained for up to 30 days, with a maximum of 1,000 entries, and can be reviewed from the plugin's admin screens. == Screenshots == 1. Balanced visitor banner with Accept, Reject, and Customize choices. 2. Five-step setup flow that keeps a fresh installation inactive. 3. Setup dashboard with banner, scan, review, and policy status. 4. Managed scan results with categories, providers, and editable descriptions. 5. Conservative script rules mapped by WordPress handle or source URL. 6. Cookie Policy block disclosing detected cookies and unconfirmed purposes. == Upgrade Notice == = 1.2.2 = Removes the plugin CSS editor and stops applying previously stored custom CSS. Use WordPress's Additional CSS editor for existing custom rules. Moves scripts and styles to WordPress enqueue APIs and documents optional Google services. Other settings and consent records are preserved. = 1.2.1 = Prepares the Free directory package, aligns translation metadata with acookies, and requires WordPress 6.6 or newer for the existing JavaScript dependencies. Existing settings and consent data are preserved. = 1.2.0 = Completes Swedish, Norwegian Bokmål, Danish, Finnish and Japanese visitor translations and adds Icelandic banner, settings and policy support. Existing language overrides are preserved. = 1.1.1 = Adds ACookies' Google-issued developer ID to direct Google tag and native GTM consent integrations. = 1.1.0 = Known cookies are classified automatically using verified references. All detected cookies remain disclosed; only uncertain or changed evidence needs attention. Existing manual edits are preserved. Deploy the managed API and scanner updates before upgrading the plugin. = 1.0.2 = Paid WordPress plans can now select up to 500 public pages per managed scan. The default remains 10 pages; existing settings and the daily scan quota are preserved. Update the managed API before upgrading the plugin. = 1.0.1 = Advanced mode now keeps optional Google consent denied before visitor choice. Native GTM integration is opt-in and requires the ACookies Consent Mode template. Existing settings and consent records are retained. = 0.2.3 = Fixes setup completion and managed scanner credentials being discarded during WordPress admin saves. Existing banner, consent and scanner preferences are preserved. = 0.2.2 = Restores banners on legacy upgrades without setup. Repairs licensed Premium scanning: one daily UTC scan of up to 100 pages. The managed API update must be deployed before Premium scanning is available. Explicitly disabled banners stay disabled; enable the banner directly from Settings if needed. = 0.2.0 = Security and activation release: removes the shared scanner credential, adds explicit scanner opt-in, keeps fresh installs inactive, adds setup guidance, site-scoped scan access, Free limits, and managed script rules. Review settings before enabling the public banner. == Changelog == = 1.2.2 = * Removes arbitrary custom CSS editing and execution; use WordPress's built-in CSS editor. * Enqueues admin styles, design preview and scan controls, and the early consent bridge through WordPress APIs. * Documents optional Google tag services, consent conditions, transmitted data and service policies. * Includes all build sources in the ZIP without a private repository dependency. = 1.2.1 = * Aligns translation domains and contributor metadata with the WordPress.org package. * Documents Free installation, scanner milestones, and AI enrichment on Free and Pro. * Includes build instructions and locked JavaScript dependencies. * Declares WordPress 6.6 as the minimum required by the compiled scripts. * Excludes the licensing and updater SDK from the directory Free ZIP while retaining it in Premium. = 1.2.0 = * Adds complete banner, preference and policy defaults for Swedish, Norwegian Bokmål, Danish, Finnish, Japanese and Icelandic. * Recognizes Norwegian no browser locales as Bokmål and retains existing custom language overrides. * Adds Icelandic cookie-purpose descriptions and shared locale consistency checks. = 1.1.1 = * Identifies ACookies with its Google-issued developer ID in direct Google tag mode and through the native GTM template. = 1.1.0 = * Adds shared verified cookie references and evidence-validated AI enrichment with bounded requests and deterministic fallbacks. * Separates automatically resolved, manually reviewed, and needs-attention cookies; the review count includes only unresolved issues. * Preserves multilingual descriptions, cookie paths, attributes, and classification evidence across the managed API. * Discloses unclassified cookies truthfully in the policy and preferences without adding a consent toggle. * Reclassifies existing scan results on upgrade, preserves manual edits, and handles legacy results with missing paths. * Paginates the admin list while counting and publishing the complete cookie inventory. = 1.0.2 = * Increases the paid managed scan maximum from 100 to 500 public pages. * Keeps the 10-page default, saved preferences, Free limits, and UTC scan quotas. * Registers with scanner protocol 3 while the managed API preserves access for older plugins. = 1.0.1 = * Adds an early consent bridge and opt-in native GTM consent integration. * Keeps denied defaults in advanced mode and restores saved consent from the existing cookie when local storage is unavailable. * Restricts basic-mode GA4 loading to analytics consent. * Adds developer ID support; Google identification remains unset until a vendor ID is issued. = 0.2.3 = * Persists setup completion, scanner opt-in, accepted terms and renewed scanner credentials through WordPress settings sanitization. * Shows completed setup status instead of restarting the wizard after publication. = 0.2.2 = * Preserves active banners and existing settings on legacy upgrades and reactivation. * Prevents forced setup on configured or active installations. * Detects Premium scanner eligibility and preserves paid scan preferences. * Adds authenticated site-scoped Premium scanning: up to 100 pages once per UTC day. * Refreshes scanner access after license changes and reports verification failures. = 0.2.1 = * Makes cookie choices accessible early in keyboard navigation. * Preserves unsaved choices when the non-blocking banner collapses during page navigation. * Adds a focus-visible Cookie settings control and improves focus restoration. * Keeps the entire banner scrollable on small screens and at high zoom. * Improves category disclosure names and screen-reader status announcements. = 0.2.0 = * Removes the scanner API key from distributable plugin code. * Adds site-scoped managed scanner registration and access tokens. * Keeps the banner and recurring scans disabled on fresh activation. * Adds a five-stage setup flow and setup dashboard. * Adds Free quotas and 30-day/1,000-entry consent retention. * Adds conservative external-script rules and basic-mode Google tag loading. * Improves WordPress.org documentation and external-service disclosure. = 0.1.19 = Polishes banner cookie detail controls and adds a way back to the compact banner view. = 0.1.18 = Adds expandable cookie category details inside the banner customization view. = 0.1.17 = Restores the desktop cookie banner max width to 450px and shortens bundled banner action labels. = 0.1.12 = Improves multilingual banner language detection for WPML pages and page language fallback. = 0.1.10 = Improves generated cookie policies with clearer purpose, duration, first-party/third-party labels, and provider privacy links. = 0.1.0 = Initial implementation.