Every page of kendallpc.com was fetched and inspected on August 20, 2026 — all 125 URLs in the sitemap, plus headers, TLS, structured data, the full tracking stack, and a clean-cookie consent test run in a real browser. This report contains only what was observed live. Where an earlier draft assessment was wrong, it is corrected here rather than repeated.
Kendall PC's website is in better editorial shape than most boutique firms twice its size. Titles are keyword-led and correctly sized across every practice page. The blog is deep — a median of 952 words per article — and publishing steadily, with the most recent piece dated July 30, 2026. Structured data is clean and present on all 125 pages. Page speed is good. None of that needs fixing.
What needs attention sits underneath: a consent banner that collects a preference nothing reads, a tracking stack carrying duplicated and unidentified third-party IDs, a privacy policy five years stale that describes a technology stack the site no longer runs, and a set of internal-linking and canonical gaps that quietly split the firm's authority in half.
An earlier draft assessment of this site circulated with three claims that do not survive contact with the live pages. They are corrected below rather than repeated, because a wrong finding in a compliance conversation is worse than no finding at all.
| Draft claim | What the live site actually shows |
|---|---|
| Practice Areas H1 reads "Class Action Defense Attorneys" | Not true. The H1 is Practice Areas. Title: Practice Areas | FDA Compliance & Corporate Law | Kendall PC (60 characters — correctly sized). |
| Legal notices claim "We guarantee 100% privacy" | Not found anywhere across 125 pages. This quote should not be attributed to the firm. |
| Title tags and homepage lack search positioning | Overstated. Titles are already strong sitewide. The weaker signal is the homepage H1 ("Bold Counsel for Today's Business") — not the title tag. |
This was tested directly, in a real browser, with every cookie cleared first — and deliberately on the privacy policy page itself. The consent banner was still displayed and un-actioned. Every non-essential category was recorded as declined.
With that refusal on record, the following had already loaded and transmitted:
The site runs the WebToffee/CookieYes plugin (cookie-law-info). That plugin blocks scripts by rewriting them to type="text/plain" until consent is granted. Across all 125 pages of kendallpc.com there are zero such rewritten tags — because the advertising and analytics tags are hard-coded directly into the theme, where the plugin never sees them.
So the banner is functioning exactly as installed. It records a preference. Nothing downstream reads it.
The tag configuration is uniform across all 125 pages — meaning this is a template-level issue, not a stray page.
| Tag | Copies / page | Assessment |
|---|---|---|
| LinkedIn Insight 9658908 | 2 | Duplicated — double-counts audience and conversion events |
| LinkedIn Insight 4319321 | 1 | Different account. Unidentified owner — most likely a former vendor's |
| Google Tag Manager GTM-NWPTQWF | 2 | Duplicated container |
| Google GT-PH3VB86Q | 2 | Duplicated |
| GA4 _ga_BH9SXK13F8 + _ga_F8YKJP02GP | 2 properties | Competing GA4 streams — neither is a clean source of truth |
| Universal Analytics UA-208884916-1 | live | Sunset property still firing |
| AdRoll Q662CQHHTBEERDPAEE76NW | 1 | Not disclosed anywhere in the privacy policy |
The practical consequence is that no analytics number coming out of this site should currently be trusted — sessions, conversions and campaign attribution are all inflated to an unknown degree by the duplication.
All of the following is live on kendallpc.com/privacy-policy/ as of August 20, 2026.
To the firm's credit, the Legal Notices page handles the attorney-client question correctly — it states plainly that viewing the site creates no attorney-client relationship and that information submitted through the site is not privileged. That language is sound. The problem is placement, addressed in Section 08.
Attorney pages exist at two URL patterns. One attorney is consolidated correctly; two are not.
| URL | Canonical points to | Words | Status |
|---|---|---|---|
| /jamie-kendall/ | itself | 1,937 | Split |
| /team/jamie-kendall/ | itself | 3,041 | Split |
| /alexandra-schulz/ | itself | 1,078 | Split |
| /team/alexandra-schulz/ | itself | 2,766 | Split |
| /brad-welsh/ | itself | 1,370 | Correct |
| /team/brad-welsh/ | → /brad-welsh/ | 1,370 | Correct |
Brad Welsh's duplicate is properly canonicalized to a single URL. Jamie Kendall's and Alexandra Schulz's are not — both versions declare themselves canonical, and both are listed in the sitemap. The result is that the firm's named principal has her authority, her citations, and her entity signal divided across two competing URLs.
This matters more than a typical duplicate-content issue because attorney identity is precisely the signal that E-E-A-T evaluation and AI entity resolution depend on. When an answer engine tries to establish "who is Jamie Kendall," it finds two partial answers instead of one authoritative one.
Two blog posts are also exact duplicates: the Connecticut/Colorado privacy law piece and the FY2021 HCFAC report, each published twice at different URLs.
Structured data is deployed and valid on all 125 pages via Yoast — nothing here is broken. Organization, WebSite, WebPage and BreadcrumbList appear everywhere; Article and Person appear on all 83 blog posts.
What's absent is every type that would identify Kendall PC as a law firm to a search or answer engine:
First, the good news, because it reframes everything else: the content is not thin. Measured in-article across 83 posts, the median is 952 words, the mean 1,132, and 40 posts run past 1,000 words. Publishing is current — the newest post is dated July 30, 2026, with an archive reaching back to December 2021.
Genuine subject-matter depth on FDA warning letters, DOJ investigations, medical-device guidance, MSL compliance and drug pricing. This is material that answer engines are actively looking for, written by people who clearly know the subject.
62 of 83 posts contain zero in-article links to any practice-area, industry or attorney page. Only one post has three or more. The articles attract attention and then hand it back.
There is a promising detail in the data: the three best-linked posts are the three most recent, carrying 8 to 13 internal links each. Someone changed the template partway through 2026 and started doing this correctly. The remaining 62 older posts were never backfilled — which makes this a finite, well-defined cleanup rather than an open-ended content program.
alt="" — an accessibility gap before it is an SEO oneThe intake form is Gravity Forms: Full Name, Email, Phone, and a free-text field. There is not a single select field on the page — no matter type, no urgency, no industry.
The practical effect is that a company that received an FDA Warning Letter yesterday and has fifteen working days to respond arrives in the inbox identically to someone asking about forming an LLC. Those two inquiries have wildly different urgency and value, and nothing in the current intake distinguishes them. A single required "What do you need help with?" dropdown would fix triage, routing and response time in one change.
The Legal Notices page correctly warns that information submitted through the site is not privileged. But a prospective client typing the facts of a federal investigation into a textarea is on the contact page, not the legal notices page. That warning belongs directly beneath the form field — where it protects both the visitor and the firm at the moment it is relevant.
Good news first: the 404 returns a correct HTTP 404 status, and it no longer leaks PHP errors — an issue flagged in an earlier review has since been fixed. But the page body now consists solely of the words "404 not found..." — no search, no links, no route back into the practice areas. Any traffic that reaches it is lost.
One minor item: http://www.kendallpc.com/ takes two redirect hops to reach the canonical address. The apex and https-www variants are clean.
This section exists because the most common way a website migration destroys value is by rebuilding things that were working. These items should be treated as requirements to preserve, not blank slate.
A migration is the single most likely moment for the working parts of this site to be lost. Capture the following before anything is touched:
Everything in this report was observed live and can be reproduced in a browser in about ten minutes. If it's useful to walk through what's involved in items 1 through 3 — the consent gating, the tag cleanup, and the policy rewrite — I'm glad to spend an hour on it, whoever ends up doing the work.