Pigeon Report
Example
Pigeon Report for fernandfinch.example
Checked September 9, 2026 at 10:14 AM Eastern Daylight Time. 5 pages checked. Prepared for the owner of fernandfinch.example.
1. What matters
The short version
- 6 Before anyone clicked anything, your site contacted 6 outside companies that run advertising, analytics, recording, chat, media or similar tools.
- 4 of them are not named in your privacy policy. 2 of these are described only in general terms.
- 5 of them were still contacted after we clicked "Reject all" on your cookie banner.
- Email SPF record found. No DMARC record found.
Counts describe this example. Every website is different.
Start here
-
1. Make Reject stop Ad Pixel
After we clicked "Reject all", your site still contacted Ad Platform through Ad Pixel.
-
2. Load the video only when someone clicks
Your video contacts Video Platform as soon as Home and Booking load, before anyone chooses to use it.
-
3. Load the map only when someone clicks
Your map contacts Map Provider as soon as Contact loads, before anyone chooses to use it.
About this report
This report records what your site did during our visits on September 9, 2026. It is not legal advice and does not say whether any law applies to your site. Section 10 explains how we checked and what we did not check.
2. Your outside companies
These are the outside companies your site contacted before anyone clicked anything, in the order we would look at them.
Ad Platform
- Tools
- Ad Pixel
- Used for
- Advertising tool
- Seen on
- Home, Wedding flowers, Contact, Booking and About
- First contacted
- about 0.4 seconds after Home started loading.
- After Reject
- Still contacted on Home, Wedding flowers, Contact, Booking and About.
- In your policies
- Not named in your privacy policy (checked September 9, 2026).
- Cookies set
- _adp_id, adp_uid
- What a tool like this typically receives
- Usually the page address, the kind of visit event, browser details and a cookie ID. The site owner chooses which events are sent.
- Evidence
- requests A-004 to A-105
Chat Provider
- Tools
- Chat Widget
- Used for
- Chat widget
- Seen on
- Home, Wedding flowers, Contact, Booking and About
- First contacted
- about 1.1 seconds after Home started loading.
- After Reject
- Still contacted on Home, Wedding flowers, Contact, Booking and About.
- In your policies
- Not named in your privacy policy (checked September 9, 2026).
- Cookies set
- cw_visitor
- What a tool like this typically receives
- Usually the visitor's IP address, browser details and the page being viewed on load. Messages and contact details when a visitor chats.
- Evidence
- requests A-015 to A-116
Video Platform
- Tools
- Video Player
- Used for
- Embedded video player
- Seen on
- Home and Booking
- First contacted
- about 1.5 seconds after Home started loading.
- After Reject
- Still contacted on Home and Booking.
- In your policies
- Described only in general terms. Your privacy policy mentions "embedded content" but does not name Video Platform.
- Your privacy policy says
- ...Some of our pages include embedded content from other websites, such as our workshop video and a map to the shop...
- Cookies set
- vp_device
- What a tool like this typically receives
- Usually the visitor's IP address, browser details and the page showing the video. Playback activity when a visitor plays it.
- Evidence
- requests A-020 to A-096
Map Provider
- Tools
- Map Embed
- Used for
- Map
- Seen on
- Contact
- First contacted
- about 1.6 seconds after Contact started loading.
- After Reject
- Still contacted on Contact.
- In your policies
- Described only in general terms. Your privacy policy mentions "embedded content" but does not name Map Provider.
- Your privacy policy says
- ...Some of our pages include embedded content from other websites, such as our workshop video and a map to the shop...
- Cookies set
- None seen
- What a tool like this typically receives
- Usually the visitor's IP address, browser details and the page showing the map. More when the visitor uses the map.
- Evidence
- requests A-069 to A-071
Scheduling Provider
- Tools
- Booking Calendar
- Used for
- Booking tool
- Seen on
- Booking
- First contacted
- about 1.4 seconds after Booking started loading.
- After Reject
- Still contacted on Booking.
- In your policies
- Named. Your privacy policy mentions "Scheduling Provider".
- Your privacy policy says
- ...Workshop bookings are handled by Scheduling Provider, which receives the name, email address and workshop you choose when you book...
- Cookies set
- bk_session
- What a tool like this typically receives
- Usually the visitor's IP address and browser details on load. Names, email addresses and answers when a visitor books.
- Evidence
- requests A-090 to A-094
Analytics Provider
- Tools
- Site Analytics
- Used for
- Analytics tool
- Seen on
- Home, Wedding flowers, Contact, Booking and About
- First contacted
- about 0.8 seconds after Home started loading.
- After Reject
- Not contacted on the pages we checked.
- In your policies
- Named. Your privacy policy mentions "Analytics Provider".
- Your privacy policy says
- ...To improve our website, we use Analytics Provider to count visits and see which pages people find most useful...
- Cookies set
- _sa_id
- What a tool like this typically receives
- Usually the page address, where the visitor came from, browser and device details, and a cookie ID. The site owner chooses which events are sent.
- Evidence
- requests A-010 to A-110
Also contacted: services that help your site work
These services deliver fonts or files, take payments, run security checks or run your cookie banner. We list them for completeness and do not count them above.
We did not see any.
Your site platform
We did not identify a hosted site platform.
Addresses we could not identify
None. We matched every outside address we saw to a known company.
Back to Contents3. Page by page
Home: fernandfinch.example
Loaded normally. We waited 10 seconds after it finished loading.
- Before any click
- Ad Platform, Chat Provider, Video Platform and Analytics Provider.
- After Reject
- Ad Platform, Chat Provider and Video Platform.
8 requests to 5 outside addresses. 2 cookies from outside companies.
Screenshot First screen of Home before any click, 10:14 AM.
Wedding flowers: fernandfinch.example/weddings
Loaded normally. We waited 10 seconds after it finished loading.
- Before any click
- Ad Platform, Chat Provider and Analytics Provider.
- After Reject
- Ad Platform and Chat Provider.
6 requests to 4 outside addresses. 1 cookie from outside companies.
Screenshot First screen of Wedding flowers before any click, 10:15 AM.
Contact: fernandfinch.example/contact
Loaded normally. We waited 10 seconds after it finished loading.
- Before any click
- Ad Platform, Chat Provider, Map Provider and Analytics Provider.
- After Reject
- Ad Platform, Chat Provider and Map Provider.
9 requests to 6 outside addresses. 1 cookie from outside companies.
Screenshot First screen of Contact before any click, 10:16 AM.
Booking: fernandfinch.example/workshops
Loaded normally. We waited 10 seconds after it finished loading.
- Before any click
- Ad Platform, Chat Provider, Video Platform, Scheduling Provider and Analytics Provider.
- After Reject
- Ad Platform, Chat Provider, Video Platform and Scheduling Provider.
10 requests to 6 outside addresses. 3 cookies from outside companies.
Screenshot First screen of Booking before any click, 10:17 AM.
About: fernandfinch.example/about
Loaded normally. We waited 10 seconds after it finished loading.
- Before any click
- Ad Platform, Chat Provider and Analytics Provider.
- After Reject
- Ad Platform and Chat Provider.
6 requests to 4 outside addresses. 1 cookie from outside companies.
Screenshot First screen of About before any click, 10:18 AM.
5. Your policies compared
What we read
We read your privacy policy at fernandfinch.example/privacy. We found it through a link at the bottom of Home.
It says "Last updated: March 4, 2024".
Your cookie information is part of your privacy policy, so we read it there.
"Named" means the name appears in the text. We do not judge what the policy says about it.
| Company | Tools | In your policies | Where | Words we matched |
|---|---|---|---|---|
| Ad Platform | Ad Pixel | Not named | Not found | None |
| Chat Provider | Chat Widget | Not named | Not found | None |
| Video Platform | Video Player | General terms only | Privacy policy | embedded content |
| Map Provider | Map Embed | General terms only | Privacy policy | embedded content |
| Scheduling Provider | Booking Calendar | Named | Privacy policy | Scheduling Provider |
| Analytics Provider | Site Analytics | Named | Privacy policy | Analytics Provider |
The words we matched
- Video Platform: ...Some of our pages include embedded content from other websites, such as our workshop video and a map to the shop...
- Map Provider: ...Some of our pages include embedded content from other websites, such as our workshop video and a map to the shop...
- Scheduling Provider: ...Workshop bookings are handled by Scheduling Provider, which receives the name, email address and workshop you choose when you book...
- Analytics Provider: ...To improve our website, we use Analytics Provider to count visits and see which pages people find most useful...
6. Email settings for your domain
These are public DNS settings for fernandfinch.example. They help mail servers that receive email from your domain tell it apart from forged email. We only read them. We did not send any email.
SPF
We found an SPF record for fernandfinch.example.
It ends with "~all", which asks receiving servers to accept email from servers not on the list but treat it as suspicious.
v=spf1 include:_spf.mail-host.example ~all
DMARC
We did not find a DMARC record at _dmarc.fernandfinch.example. DMARC tells receiving servers what to do with email that fails SPF and DKIM, and where to send reports.
DKIM
We found DKIM keys under 1 name: s1. DKIM adds a signature to your email that receiving servers can check.
s1._domainkey.fernandfinch.example
Mail servers
Email for fernandfinch.example is received by mx1.mail-host.example and mx2.mail-host.example.
10 mx1.mail-host.example, 20 mx2.mail-host.example
7. WordPress public user list
Your site's public WordPress user list (fernandfinch.example/wp-json/wp/v2/users) listed 2 accounts. We counted them and did not record any names. Many site owners limit this list so account names are not public.
Back to Contents8. What to do
Each item says what we saw, what you could do and what changes if you do it. We list them in the order we would look at them. You or your web developer can make these changes, and you decide which ones suit your business.
Do first
-
1. Make Reject stop Ad Pixel
- What we saw
- Ad Pixel (Ad Platform) was contacted on Home, Wedding flowers, Contact, Booking and About before anything was clicked, about 0.4 seconds after the page started loading. After we clicked "Reject all", it was still contacted on Home, Wedding flowers, Contact, Booking and About.
- What you could do
- In your banner settings or your tag manager, set Ad Pixel to load only after a visitor accepts. If nobody uses Ad Pixel, remove it instead.
- What changes
- Visitors who click Reject are no longer counted by Ad Pixel, so its reports show fewer visits.
- A question for you
- Is Ad Pixel meant to follow the choice visitors make on your banner?
- Evidence
- requests A-004 to A-105; after Reject, requests B-004 to B-097
Next
-
2. Load the video only when someone clicks
- What we saw
- Video Player (Video Platform) was contacted on Home and Booking before anything was clicked, about 1.5 seconds after the page started loading.
- What you could do
- Show a preview image or a link first, and load the Video Player only when a visitor clicks it. Keep the video's title and a still image visible to everyone. If you keep it as it is, name Video Platform in your privacy policy.
- What changes
- Visitors take one extra step to use it. Video Platform is contacted only by visitors who choose it.
- A question for you
- Do most visitors use the video, or would a link work as well?
- Evidence
- requests A-020 to A-096; after Reject, requests B-018 to B-088
-
3. Load the map only when someone clicks
- What we saw
- Map Embed (Map Provider) was contacted on Contact before anything was clicked, about 1.6 seconds after the page started loading.
- What you could do
- Show a preview image or a link first, and load the Map Embed only when a visitor clicks it. Keep the address visible to everyone. If you keep it as it is, name Map Provider in your privacy policy.
- What changes
- Visitors take one extra step to use it. Map Provider is contacted only by visitors who choose it.
- A question for you
- Do most visitors use the map, or would a link work as well?
- Evidence
- requests A-069 to A-071; after Reject, requests B-063 to B-065
-
4. Load the chat only when someone asks for it, or remove it
- What we saw
- Chat Widget (Chat Provider) was contacted on Home, Wedding flowers, Contact, Booking and About before anything was clicked, about 1.1 seconds after the page started loading.
- What you could do
- Show a simple chat button that loads the Chat Widget when clicked. If nobody answers chats any more, remove it and keep your phone number and email easy to find.
- What changes
- The chat opens a moment later when someone clicks. Removing it means visitors use your other contact details.
- A question for you
- Does someone still answer chats?
- Evidence
- requests A-015 to A-116; after Reject, requests B-013 to B-106
-
5. Add a DMARC record in report-only mode
- What we saw
- We did not find a DMARC record at _dmarc.fernandfinch.example.
- What you could do
- Add a DMARC record with the policy "none" and a report address you can read, for example v=DMARC1; p=none; rua=mailto:dmarc@fernandfinch.example.
- What changes
- Nothing changes for your email at first. You start receiving reports about which servers send email as fernandfinch.example.
- A question for you
- Who looks after your domain's DNS settings?
- Evidence
- The DNS answers in section 11, part F
-
6. Limit your public WordPress user list
- What we saw
- The public user list at fernandfinch.example/wp-json/wp/v2/users listed 2 accounts. We counted them and did not record any names.
- What you could do
- A setting in many WordPress security plugins, or a small code change, can limit this list to signed-in users. Check afterwards that anything using the list, such as an app, still works.
- What changes
- Account names are no longer listed publicly. Some apps and plugins use this list and may need a setting changed.
- A question for you
- Does any app or service rely on this list?
- Evidence
- The one request to the user list, recorded in evidence/run.log
9. Vendor list for your lawyer or advisor
This list records facts from our visits on September 9, 2026. It is not legal advice. It shows which outside companies your site contacted, when, and whether your policies mention them, so that your lawyer or advisor can review them.
| Company | Tool | Used for | Pages | Before any click | After Reject | Cookies | Policy mention | Evidence |
|---|---|---|---|---|---|---|---|---|
| Ad Platform | Ad Pixel | Advertising tool | Home, Wedding flowers, Contact, Booking and About | Yes | Still contacted | _adp_id, adp_uid | Not named | A-004 to A-105 |
| Chat Provider | Chat Widget | Chat widget | Home, Wedding flowers, Contact, Booking and About | Yes | Still contacted | cw_visitor | Not named | A-015 to A-116 |
| Video Platform | Video Player | Embedded video player | Home and Booking | Yes | Still contacted | vp_device | General terms only ("embedded content") | A-020 to A-096 |
| Map Provider | Map Embed | Map | Contact | Yes | Still contacted | None seen | General terms only ("embedded content") | A-069 to A-071 |
| Scheduling Provider | Booking Calendar | Booking tool | Booking | Yes | Still contacted | bk_session | Named ("Scheduling Provider", privacy policy) | A-090 to A-094 |
| Analytics Provider | Site Analytics | Analytics tool | Home, Wedding flowers, Contact, Booking and About | Yes | Not contacted | _sa_id | Named ("Analytics Provider", privacy policy) | A-010 to A-110 |
10. How we checked and what we did not check
How we checked
- When: September 9, 2026 at 10:14 AM Eastern Daylight Time to September 9, 2026 at 10:31 AM Eastern Daylight Time.
- Where: a computer in the United States, on an ordinary internet connection.
- Browser: Microsoft Edge 154.0.4258.37, run automatically without a window. Each visit used a new, empty browser profile: no saved cookies, no sign-ins and no extensions. We turned off the browser's own tracking protection so we could see everything the pages asked it to load. Other browsers and settings can block some of these connections.
- Screen: 1440 by 900 pixels, like a laptop. We did not check phone layouts.
- Pages: Home, Wedding flowers, Contact, Booking and About. We chose them from links on your homepage, and included Wedding flowers at your request.
- First visit: for each page, we loaded it once, scrolled down it in steps and waited 10 seconds. We did not click, type, hover, sign in or submit anything.
- Second visit: in another new, empty browser we loaded your homepage, waited for the banner and clicked "Reject all" once. That was the only click in either visit. We then waited 5 seconds and loaded each page again the same way.
- Policies: we read your privacy policy on September 9, 2026. We compared them with the names, web addresses and cookie names of the companies we saw, using our list of 316 known tools (version 2026.09.01).
- Email: we looked up public DNS records for fernandfinch.example: SPF, DMARC, mail servers, and DKIM keys under 31 common names.
- WordPress: we requested the public user list once and counted the accounts. We did not record any names.
- Pace: we loaded one page at a time with a pause between pages, 12 page loads in total.
What we did not check
- Pages other than those listed above.
- What happens after clicking Accept, opening banner settings, signing in, adding to a cart, booking or submitting a form.
- How your site behaves for visitors in other states or countries. Banners and tools can change by location.
- Phone and tablet layouts, and apps.
- Anything your web server, tag server or other services send to other companies behind the scenes. A browser cannot see that.
- What each company does with information after receiving it, and the settings inside your accounts with those companies.
- Whether any law applies, or what your policies should say. Those are questions for your lawyer.
- Photos with location data, forgotten PDFs and other old documents, and domain registration records. This version of the report does not include them.
- How well your site resists misuse. We did not test for weaknesses and did not look for hidden pages.
- Anything about individual people.
Good to know
- Results can change between visits. Ads, experiments and tag managers can load different tools at different times.
- Our list of known tools is built from each company's own public documentation. An address we did not recognize is listed as unidentified rather than guessed.
- Times are measured from when each page started loading and are approximate.
11. Evidence
A. Files
| File | What it holds |
|---|---|
| report.json | Every fact in this report, as data |
| pigeon-report_fernandfinch.example_2026-09-09.html and .pdf | This report |
| evidence/requests.csv and requests.ndjson | Every request in both visits, with its full address |
| evidence/cookies.csv | Every cookie by name, without values |
| evidence/vendor-list.csv | The vendor list in section 9, for a spreadsheet |
| evidence/screenshots/ | Full-size screenshots |
| evidence/policies/privacy.txt | Your privacy policy's text as we read it |
| evidence/dns.json | Every DNS answer |
| evidence/run.log | What the tool did and when |
| evidence/manifest.json | The size and SHA-256 hash of every file |
In a real report this table also gives each file's size and the first 16 characters of its SHA-256 hash, and a last line gives the hash of report.json, so you can tell whether anything changed. Fern & Finch is fictional, so there are no files to hash.
B. Requests to outside addresses
| Ref | Time | Company and tool | Address | Type | Status |
|---|---|---|---|---|---|
| A-004 | 0.4 seconds | Ad Platform, Ad Pixel | https://px.ad-platform.example/pixel.js | script | 200 |
| A-007 | 0.6 seconds | Ad Platform, Ad Pixel | https://px.ad-platform.example/collect?ev=PageView | image | 200 |
| A-010 | 0.8 seconds | Analytics Provider, Site Analytics | https://tags.analytics-provider.example/tag.js | script | 200 |
| A-012 | 0.9 seconds | Analytics Provider, Site Analytics | https://collect.analytics-provider.example/collect?en=page_view | ping | 204 |
| A-015 | 1.1 seconds | Chat Provider, Chat Widget | https://widget.chat-provider.example/loader.js | script | 200 |
| A-018 | 1.3 seconds | Chat Provider, Chat Widget | https://widget.chat-provider.example/api/visitor | fetch | 200 |
| A-020 | 1.5 seconds | Video Platform, Video Player | https://player.video-platform.example/embed/workshop-tour | document | 200 |
| A-023 | 1.7 seconds | Video Platform, Video Player | https://player.video-platform.example/player.js | script | 200 |
Plus 18 requests to your own site.
| Ref | Time | Company and tool | Address | Type | Status |
|---|---|---|---|---|---|
| B-004 | 0.4 seconds | Ad Platform, Ad Pixel | https://px.ad-platform.example/pixel.js | script | 200 |
| B-007 | 0.6 seconds | Ad Platform, Ad Pixel | https://px.ad-platform.example/collect?ev=PageView | image | 200 |
| B-013 | 1.1 seconds | Chat Provider, Chat Widget | https://widget.chat-provider.example/loader.js | script | 200 |
| B-016 | 1.3 seconds | Chat Provider, Chat Widget | https://widget.chat-provider.example/api/visitor | fetch | 200 |
| B-018 | 1.5 seconds | Video Platform, Video Player | https://player.video-platform.example/embed/workshop-tour | document | 200 |
| B-021 | 1.7 seconds | Video Platform, Video Player | https://player.video-platform.example/player.js | script | 200 |
Plus 18 requests to your own site.
A real report prints one table for each page and visit. The other 8 are summarized here, and the full log is in evidence/requests.csv.
- Wedding flowers, first visit: requests A-027 to A-048, 6 of them to outside addresses.
- Contact, first visit: requests A-049 to A-071, 9 of them to outside addresses.
- Booking, first visit: requests A-072 to A-098, 10 of them to outside addresses.
- About, first visit: requests A-099 to A-117, 6 of them to outside addresses.
- Wedding flowers, after Reject: requests B-025 to B-044, 4 of them to outside addresses.
- Contact, after Reject: requests B-045 to B-065, 7 of them to outside addresses.
- Booking, after Reject: requests B-066 to B-090, 8 of them to outside addresses.
- About, after Reject: requests B-091 to B-107, 4 of them to outside addresses.
C. Cookies
| Name | Set for | Company | Visit | First seen on | Expires |
|---|---|---|---|---|---|
| _adp_id | fernandfinch.example | Ad Platform | First visit | Home | 90 days |
| adp_uid | px.ad-platform.example | Ad Platform | First visit | Home | 1 year |
| _sa_id | fernandfinch.example | Analytics Provider | First visit | Home | 2 years |
| cw_visitor | fernandfinch.example | Chat Provider | First visit | Home | 6 months |
| vp_device | player.video-platform.example | Video Platform | First visit | Home | 1 year |
| bk_session | book.scheduling-provider.example | Scheduling Provider | First visit | Booking | When the browser closes |
| ff_consent | fernandfinch.example | Your own site | After Reject | Home | 6 months |
| bk_session | book.scheduling-provider.example | Scheduling Provider | After Reject | Booking | When the browser closes |
D. Screenshots
- First screen of Home before any click, 10:14 AM.
- First screen of Wedding flowers before any click, 10:15 AM.
- First screen of Contact before any click, 10:16 AM.
- First screen of Booking before any click, 10:17 AM.
- First screen of About before any click, 10:18 AM.
- Your banner before we clicked, 10:23 AM.
- The page after we clicked "Reject all", 10:24 AM.
In a real report these are images, and the full-size files are in evidence/screenshots. Fern & Finch is fictional, so they are described in words here.
E. Policy copies
| Kind | Address | Read at | Length in characters | Last updated text |
|---|---|---|---|---|
| Privacy policy | https://fernandfinch.example/privacy/ | 10:30 AM | 6,412 | Last updated: March 4, 2024 |
F. DNS answers
| Name | Type | Answer | Looked up at |
|---|---|---|---|
| fernandfinch.example | TXT | v=spf1 include:_spf.mail-host.example ~all | 10:31 AM |
| _dmarc.fernandfinch.example | TXT | No record | 10:31 AM |
| s1._domainkey.fernandfinch.example | TXT | v=DKIM1; k=rsa; p=MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAuY3... (shortened here) | 10:31 AM |
| fernandfinch.example | MX | 10 mx1.mail-host.example, 20 mx2.mail-host.example | 10:31 AM |
G. Clicks
| Page | Label | Method | Time |
|---|---|---|---|
| Home | "Reject all" | Matched by its text | 10:23 AM |
12. Plain-language guide
| Term | Explanation |
|---|---|
| Outside company | A company other than you whose server a visitor's browser contacts when your page loads. |
| Tool | A product from an outside company that your site loads, such as an analytics tool or a video player. |
| Request | One message from a visitor's browser to a server, asking for a file or sending information. |
| Pixel | A small piece of code from an advertising company that reports visits to that company. |
| Cookie | A small text file a website stores in the browser so it can recognize the browser later. |
| Your own cookies and outside cookies | Your own cookies belong to your site's address. Outside cookies belong to another company's address. |
| Cookie banner | The message that asks visitors about cookies. Some tools read the choice and wait for it. |
| Reject | The banner button for saying no, sometimes labeled Decline or Deny. |
| Embed | Content from another company shown inside your page, such as a video, map or booking calendar. |
| Load on click | Show a preview or link first, and contact the outside company only when a visitor chooses to. |
| DNS | The internet's public directory for your domain. Email settings live there. |
| SPF | A DNS setting that lists the servers allowed to send email for your domain. |
| DKIM | A signature added to your email that receiving servers can check against a public key in DNS. |
| DMARC | A DNS setting that tells receiving servers what to do with email that fails SPF and DKIM, and where to send reports. |
| Mail servers (MX) | The servers that receive email for your domain. |
| WordPress user list | A public address on many WordPress sites that can list the site's account names. |
An example Pigeon Report for Fern & Finch, a fictional florist. In a real Report, every company is named and every web address is real.