Effective date: 10 October 2026 Developer: PublishGate Contact: publishgate.support@gmail.com
This policy describes version 0.1.0 of the PublishGate Chrome extension and how it handles information. It is written to match what the extension’s code does.
PublishGate reads information only from the tab you opened it on (the active tab of your current window), and only after you have consented.
Each time you open PublishGate on a page: it reads the web address (URL) of the tab, adds its own script to the tab if it is not already there, and checks the page for signs that it was built with Webflow: attributes on the page’s <html> element, the page’s “generator” meta tag, the addresses of its scripts, linked files (such as stylesheets) and images, its host name, and some Webflow-specific class names.
When you press Scan this page, it reads from the page:
alt text, role, class names, displayed size, whether it sits inside a link, button or captioned figure, short text in the container around it (up to 200 characters), and whether a nearby video is muted or has controls;data- attributes, and class names;<textarea>, code and similar elements is skipped;It inspects the main page only. Content inside embedded frames (iframes) and shadow DOM is not scanned. Reading is not editing: PublishGate does not change your page, except that when you click “Show on page” it briefly (about four seconds) draws an outline around the affected element.
Results appear only in the PublishGate popup on your screen. They include finding titles and explanations; short excerpts from the page (the HTML of an affected image, link or tag, up to about 180 characters; text around a placeholder phrase, up to about 120 characters; nearby text quoted up to about 60 characters); link addresses; a short path to the affected element; the site’s host name (the full address appears when you hover over it); and counts.
Because these come from the page, they can contain whatever the page contains, including personal information or tokens that appear in a link address or page text. They are not sent anywhere by PublishGate, but anyone who can see your screen, or a screenshot of the results, can see them. Do not share results from private pages.
<textarea> elements. It does read ordinary text that a page displays, which can include the visible text of labels, buttons and options.document.cookie. (When link checks are on, your browser itself attaches cookies to requests; see section 7.)Its permissions are limited to activeTab (temporary access to the tab you opened it on) and scripting (to add its own packaged script to that tab). It requests no permission to access websites in general.
Saved on your device. PublishGate saves two entries in the extension’s own localStorage in your browser profile:
| Key | Contents |
|---|---|
publishgate.consent |
The disclosure version you agreed to and the time you agreed. |
publishgate.linkChecks |
true or false: whether link checks are on. Anything other than true means off. |
An older setting called publishgate.verifyLinks from earlier development builds is ignored and deleted. PublishGate does not use chrome.storage, cookies or a database, and it writes no scan results to disk. PublishGate does not encrypt these two entries. Removing the extension or clearing its data may erase them, in which case you are asked again; whether and when your browser does this is outside PublishGate’s control.
Scan results. Results are held in the memory of the scanned tab, in PublishGate’s script, so that reopening the popup can show the last result. They are discarded when you reload or close the tab, when you scan again (the new result replaces the old one), or when you withdraw consent. On a single-page site that changes address without reloading, an old result can stay in the tab’s memory until the tab is reloaded or closed, but the popup only shows a result for the exact address that was scanned. The popup keeps results only while it is open.
Link checks are the only thing PublishGate does that sends data over the network. They are disabled by default and run only if you tick the link-check checkbox, either on the first-use screen or beside the Scan button, and then press Scan. Unticking the checkbox stops link checks in later scans. Withdrawing consent also asks any link check already in progress to stop (section 10).
Which links are requested.
www or non-www variant of the host are not requested. Link checks run only on http and https pages.#fragment) is checked at most once per scan, and at most 40 distinct addresses are checked per scan. Any further links are not checked. “Checked once” can mean two requests: a HEAD and, in the cases described below, one confirming GET.Links that are skipped. PublishGate does not request:
download, onclick, data-method, data-confirm, data-remote, data-turbo-method, data-turbo-confirm, data-action, hx-post, hx-delete, hx-put or hx-patch;logout, signout, sign-off, delete, destroy, remove, unsubscribe, opt-out, cancel, reset, confirm, verify, activate, approve, revoke, disable, unlink, invite, add-to, cart/add, checkout, purchase, /api/, /admin or /wp-admin. Matching is by text, so some ordinary pages are skipped too;token, access_token, key, api_key, code, auth, otp, sig, signature, session, sid, nonce, secret, password, pwd, hash, invite or magic.If any link to an address is of one of these kinds, that address is not requested at all. The number of skipped links is shown in the results.
How they are requested.
HEAD request. Only if the answer is 404, 405, 410 or 501 (and is not a redirect) does it send one GET request to the same address to confirm. It reads only the status code and asks the browser to discard the response body.What the website receives. Your browser makes these requests from the scanned page’s context, so they are sent the way requests from that page would be:
Referer header. Depending on the scanned page’s referrer policy, this header may contain the full scanned page URL, including its path and query string but not its fragment; it may contain only the origin; or it may be omitted. In our Chrome test, a page that set a no-referrer policy omitted this header, while cookies were still sent.Sec-Fetch-Site: same-origin and Sec-Fetch-Mode: cors.http, these requests are plain http too.The website’s operator may log these requests. The operator receives them as ordinary requests from your browser and can record them, together with the cookies and the Referer they carry, in server logs or other tools. That can include personal data or tokens in the scanned page’s address or in cookies. No one at PublishGate receives them.
They are not guaranteed to be harmless. The requests are meant to be read-only, and PublishGate skips links that look like actions. But it cannot know how a particular website behaves. A site might react to a HEAD or GET request in unexpected ways, for example by changing something, counting a visit, raising an alert or applying a rate limit, and the skip rules are based on text patterns that can miss unusual sites. Leave link checks off for sites where that matters to you.
PublishGate bundles three open-source libraries, all under the MIT licence: React 19.3.0, React DOM 19.3.0 and Scheduler 0.28.0 (used by React DOM). Their licence texts are included in the file THIRD_PARTY_NOTICES.txt in the extension package. These libraries run inside the extension on your device; they are not services and do not send data anywhere.
You can review the full disclosure at any time with the Privacy button in the popup. Withdraw consent and reset there:
After withdrawing, PublishGate does not read your tab or make requests until you agree again. Withdrawing does not undo requests already sent to a website; those are in that site’s own records.
http site they are not encrypted.PublishGate is intended to comply with the Chrome Web Store User Data Policy, including its Limited Use requirements: it uses page information only for its single purpose of showing you findings about the page you scan, and does not transfer or sell it. This is a statement of how PublishGate is designed to behave and is not a guarantee of any decision by Google.
If this policy changes, the new version will be published at the same address with a new effective date. If a release changes what PublishGate reads, shows, stores or sends, the in-product disclosure is updated and its version number increased, so that earlier consent no longer applies and you are asked again before the changed handling takes place (section 2).
For privacy questions, contact publishgate.support@gmail.com.