Twelve findings, ordered by severity. Each carries a severity tag and one of four categories,
and each states the evidence it rests on.
The blog sells content strategy and publishes nothing
Marketing Gardens sells content strategy and the "They Ask, You Answer" framework. The blog carries three article cards and all three read Coming Soon. Zero posts are published. The page also declares Blog structured data to search engines, so it announces a publication that has no issues. For a firm whose product is content, this is the single loudest signal on the site, and every prospect who clicks Blog before booking a call sees it.
Evidence: Rendered /blog in Chrome and saved its source: three article cards, each ending "Coming Soon", plus a panel reading "Blog Launching Soon". 236 words on the page, JSON-LD @type: Blog present, no post URL anywhere in the markup.
02
HIGH
Market Competition
The one real piece of content on the site is the one page the index does not hold
The Perfect Copier case study is the deepest page on the site at 724 words, and the only page that tells a story with a result in it. A targeted search for it in a Bing-backed public index returned nothing, while seven shorter pages did return. A page an index does not hold cannot rank in that index at any position, so this question comes before any question about where the site ranks.
Evidence: site:marketinggardens.com on a Bing-backed index returned 7 distinct URLs. A targeted query, "Perfect Copier" site:marketinggardens.com, returned no results. A control query for a domain that does not exist also returned no results, and the site query returned seven, so the check can come back both ways.
Every page is too thin to compete, median 300 words
Across the 10 pages with body copy, the median is 300 words, the two middle pages being 236 and 365, and the whole site totals 3,532. 6 of 10 pages sit under 400 words. Thin pages also give AI assistants nothing quotable to lift, which is the same content problem showing up in a second channel.
Evidence: Body text extracted from each crawled page with markup, scripts and styles stripped. Range 186 to 724 words.
Four performance claims on the homepage have no support anywhere on the site
The homepage opens with 50+ Clients Served, 3.5x Average Lead Increase, 85% Client Retention and 10+ yr Industry Experience. Only the last has any backing on the site. There is no client list, no logo wall, no testimonial, no review, and the single case study reports a time saving on a quoting tool rather than a lead figure. Unsupported numbers on a marketing agency's own site are the first thing a skeptical buyer tests, and they are also a claims-substantiation exposure worth a decision rather than a shrug.
Evidence: Homepage accessibility tree, stat block. Site-wide search for testimonial, review or client-logo markup found none. /work lists one case study.
Google has no real-user speed data for this domain at all
The PageSpeed Insights API returns no CrUX field record for this site. That record appears once Google has collected enough real Chrome visits to publish one, so its absence means the sample is below that floor. Lab numbers are healthy: mobile score 87, LCP 3.5s, CLS 0.001. Speed is not the problem here. The absence of the field record is the finding: Google itself has not seen enough visits to this domain to publish one, and that is a measurement no analytics login is needed to read.
Evidence: PageSpeed Insights API, mobile strategy, median of three samples run 2026-09-17. Field section returned no CrUX data.
06
MEDIUM
Decisions Needed
The main business schema points its address at the wrong node
On the homepage the ProfessionalService block sets address to a reference to the Organization node rather than to a postal address. An Organization is not an address, so a strict parser resolves it to nothing. The Organization block right beside it carries a correct, complete PostalAddress, so this is a one-line fix. Also missing from the service block: geo coordinates, sameAs links, and an image.
Evidence: Homepage JSON-LD, @graph node three: "address": {"@id": "https://marketinggardens.com/#organization"}.
07
MEDIUM
Market Competition
No Google Business Profile found, and no page targets Lynchburg
A public search turned up no Google Business Profile for the firm. A profile may exist unverified and simply carry no signal; from outside we cannot tell those apart, and we are not going to guess. Either way the practical position is the same: the Lynchburg map pack is unreachable today. The site also has zero location or service-area pages, so there is nothing for a local query to land on even organically.
Evidence: Public search for the brand plus Lynchburg VA returned no profile, no Maps listing and no tier-one directory listing. Site crawl found no location page and no Maps embed. Owner-side profile data was not available; this is a cold audit with no account access.
The thank-you page is live, indexable and listed in the sitemap
/thank-you returns 200, carries no noindex, and is submitted to search engines in the sitemap. Nothing on the site links to it, so it is reachable only after a form submit. A confirmation page in search results is a page a stranger can land on without ever filling in the form, which both wastes a click and inflates any conversion count that keys on reaching that URL.
Evidence: /thank-you returned HTTP 200 with no noindex. Present in sitemap-0.xml. No internal link to it found in the crawl of the other ten pages.
The founder photo is a generated avatar and there is no way to reach a person by email
The About page presents a one-person firm, so the founder is the product. The About and homepage founder image is an 820-byte generated SVG: a gradient square with a white circle on it, not a photograph. There is no email address anywhere on the site and no link to any social or professional profile, which is also why the structured data has no sameAs to give. A buyer who wants to check who they are hiring has a phone number and a form.
Evidence: /images/about-jesse.svg, 820 bytes, contains a linearGradient, a rect and a circle. No mailto: link and no social link found in the rendered homepage.
Every image is a JPEG, and the largest one loads before anything else
All 8 images are JPEG, totalling 553 KB. The hero is 122 KB and loads eagerly, which is correct for a hero but expensive at that size. Modern formats typically cut these by half at the same visual quality. The logo is served at 930 by 704 pixels for a slot a fraction of that size.
Evidence: Measured with a direct request per file. Natural dimensions read from the rendered page.
No security response headers at all
The site sends none of HSTS, Content-Security-Policy, X-Frame-Options, X-Content-Type-Options or Referrer-Policy. The plain-HTTP redirect to HTTPS is in place and correct, so this is not urgent, but the site already sits behind Cloudflare and headers can be added there without touching the site itself.
Evidence: Response headers on the homepage over HTTPS. Plain HTTP returns 301 to the HTTPS apex.
The crawl foundations are clean, which is why the content gap is so visible
Robots.txt allows everything and names fourteen crawlers explicitly, twelve of them AI or AI-training agents. An llms.txt exists and is better structured than most. Every page has exactly one H1, a unique title, a meta description, a self-referencing canonical, and every image carries alt text. No page carries an accidental noindex. Analytics is installed. The technical floor is sound; nothing here is holding the site back.
Evidence: Per-page check across all ten crawled pages: titles 24 to 67 characters, descriptions 80 to 157, one H1 each, canonical present and self-referencing on each, zero images without alt.