Strategic map

Gillish Mesh: product brief.

What we’re building, who it’s for, why it should exist, how it should be priced, how it gets sold, and how we’ll know if it’s working. Mesh is a single-purpose WordPress plugin that crawls a competing blog, extracts its internal-link graph, and renders a side-by-side structural comparison against the user’s own site, aimed at niche bloggers priced out of Ahrefs / Semrush. This page mirrors the in-repo plans/PRODUCT-BRIEF.md; that file stays the source of truth. Several sections are marked OPEN, the author hasn’t committed.

Executive summary#

What: a single-purpose WordPress plugin that crawls a competing blog site, extracts its internal-link graph, computes structural metrics, and renders a side-by-side comparison against the user’s own site.

For whom: niche bloggers (food, fitness, parenting, tech reviews, hobby verticals) running 100–2,000-page WordPress sites who want to understand how a competitor structures their content but can’t justify the $130–200 / month cost of Ahrefs / Semrush / Screaming Frog.

Why now: SEO tooling has bifurcated into free-and-shallow (Yoast, RankMath’s “SEO score”) or deep-and-expensive (Ahrefs et al.). The middle, cheap, focused, single-purpose, is empty. Niche bloggers are the largest underserved cohort in that gap.

  • Sibling product: the standalone sibling of Gillish Node. Both work fully alone; together they unlock a Better Together layer. The pairing is brand and discovery synergy, not a hard dependency.
  • Commercial model (working hypothesis): freemium, free tier caps at 1 active competitor + 250 pages per crawl; Pro (target $39 / year) unlocks unlimited crawls, the 5,000-page cap, CSV export, scheduled re-crawls. OPEN: see Pricing below.
  • Build cadence: Phase 0 (skeleton) shipped 2026-05-02. Project is parked. Phases 1–5 are sequenced in the plan but not started.

Problem & opportunity#

A niche blogger who suspects a competitor’s structural advantage is real, better hub-and-spoke linking, more pillar content, denser cross-cluster linking, has no affordable way to see it. Today the options are: click through the competitor’s site by hand for hours (no metrics, doesn’t scale); pay for Ahrefs ($129 / mo) or Semrush ($140 / mo) and use 5% of it; buy Screaming Frog ($209 / yr), a desktop app whose raw CSV output you’d have to DIY into a comparison; or give up, most do.

The market gap is the middle tier. There are dozens of WordPress plugins for your own site’s SEO; there are zero credible WordPress-native plugins for structural analysis of someone else’s site at a niche-blogger price point. The target user is WordPress-native (lives in wp-admin), price-sensitive (a $39 / year tool is an impulse buy; a $129 / month tool is a board meeting), and has a single, repeated comparison need (1–3 ongoing competitors, not 20).

Personas#

Three concrete personas span the price ceiling and the acquisition channels:

  • Sara, the food blogger. ~620-post recipe blog, ~$1,200 / mo from ads + Amazon. Pays for RankMath Pro, Tasty Recipes; calls Ahrefs “absurd”. Wants: “why does that site rank above me, what’s their structure?” Tolerable price $30–50 / year. Channel: niche-blogger Facebook groups, Pinterest Slack, listicles.
  • Jan, the tech reviewer. ~1,100-post budget-electronics blog, ~$2,800 / mo affiliate. Hostile to subscriptions; pays one-time. Wants comparison data to decide whether to add a pillar page. Tolerable: $59 one-time or $39 / year. Channel: r/Affiliatemarketing, Indie Hackers, YouTube.
  • Linda, the niche-portfolio operator. 4 blogs across niches, ~$8,500 / mo, already on SEMrush Guru. Wants the same insight per-site, in wp-admin, cheap enough to run on the smaller sites where SEMrush doesn’t pencil. Tolerable: $99 / year per site, possibly a multi-site bundle. Channel: agency / portfolio Slack, Mediavine.

Value proposition#

One-sentence pitch by audience, common thread: WordPress-native, single-purpose, affordable:

  • Sara: “See exactly how your competitor structures their content for under $4 / month, without leaving WordPress.”
  • Jan: “Skip the $129 / mo Ahrefs subscription. Get the structural comparison data you actually need, for the price of a domain renewal.”
  • Linda: “Run the same competitive structural analysis on your smaller niche sites that you do on your money sites, without scaling SEMrush licenses.”
  • WordPress press: “First WordPress-native tool to do competitor link-graph analysis without leaving wp-admin.”

Product positioning#

Mesh sits in the cheap × narrow-scope quadrant, sharing the row with Yoast / RankMath but on a different axis: those tools optimise your own site; Mesh analyses theirs. That cross-positioning makes Mesh complementary to existing SEO tooling, not a replacement , customers keep RankMath and buy Mesh.

Brand voice is taken from Gillish Node: honest about scope (“does one thing well” beats “AI-powered all-in-one”), written for bloggers not enterprise, plain / dense / technical visual register (D3 canvas, dense data tables), Norwegian author / English product. Mesh reuses Node’s metric vocabulary so the two read as siblings: Link Gravity (PageRank-style authority, 0–1), Levels (BFS depth from the dominant hub), Hub, Cluster, Orphan, Cross-cluster density, plus one Mesh-specific term, Structural delta (the headline per-metric difference on the Compare tab).

Competitive landscape#

There are no direct competitors, that is the gap. The closest analogs all fail one of the four constraints (WordPress-native + single-purpose + structural-only + under $50 / year): Ahrefs Site Explorer ($129 / mo), Semrush ($140 / mo), Screaming Frog ($209 / yr, desktop, no comparison UI), Sitebulb (agency-priced), Ubersuggest ($29 / mo, keyword-focused), Linkstorm ($19 / mo, your-own-site only).

Indirect threats: Ahrefs shipping a lite tier (low probability, talked about for years); a free plugin clone (moderate over 2–3 years, sustained Cloudflare-handling maintenance is non-trivial); a bigger plugin (RankMath / AIOSEO) bundling competitor analysis as a Pro upsell (higher probability , the defensibility answer is focus, brand, and the Better Together moat); Cloudflare getting stricter (the honest clear-error graceful-degradation path is the answer, Mesh doesn’t pretend to be a hard-bypass tool).

Differentiators & moat#

What is defensible 2–3 years out: (1) Better Together with Gillish Node, nobody else has both an internal-linking manager and a competitor-structural-analyser sharing brand and aesthetic; a rival would have to build both. (2) The author’s existing audience, Node’s installed base is pre-qualified for Mesh; cold-launch risk is far lower. (3) Single-purpose discipline , resisting feature creep is the moat; the day Mesh adds a rank tracker, AIOSEO can match it. (4) Cloudflare-handling craft, realistic-UA + custom-headers + clear-error degradation is an ongoing maintenance burden the first plugin to nail becomes the reference for.

What is not a moat: the crawler itself, the graph algorithms, the D3 canvas, all textbook / off-the-shelf. The moat is brand + audience + discipline; never confuse the implementation with the value.

Pricing & commercial model#

Three candidates were analysed: A, Freemium (working hypothesis: Free = 1 active competitor / 250 pages; Pro $39 / year = unlimited / 5,000 pages / scheduled re-crawl / CSV; Pro Multi-site $99 / year up to 5 sites); B, Paid only ($59 / $149, no free-tier complexity but loses the wp.org distribution flywheel); C, Free + paid SERP-API tier (max reach but adds a SaaS dependency the brief explicitly rejects). Recommendation: Candidate A, it matches successful WordPress plugin economics (RankMath, Yoast, WPRocket all converged on it) and the persona price sensitivities. The Better Together bridge is never gated, free distribution synergy behind a paywall would defeat its purpose.

Distribution strategy#

Channels: the wp.org plugin directory (free tier, free distribution + reviews + SEO); the own product site (gillish.com/mesh, Pro sale page); a small “Try Gillish Mesh →” card in Node’s bento dashboard (free distribution to Node’s installed base); listicles / press (WPBeginner, WPTavern, post-status, comped with Pro licenses); high-intent low-competition YouTube tutorials; niche-blogger communities (show up and answer, don’t spam). Anti-channels: paid Google ads (SEO keywords bid up by Ahrefs), Facebook ads (questionable ROI for a $39 product), an affiliate program (the wp.org + Node cross-pollination is already cheaper). Launch is sequenced for when Phase 5 ships: soft launch → press outreach → SEO content → Node-integration push → iterate on the first 90 days of data.

Better Together: strategic value#

Mesh works fully standalone (plan §14.3 is non-negotiable). The optional Node integration is the strategic differentiator: acquisition synergy two ways (Node → Mesh via a Content-Graph card; Mesh → Node via a Settings / Docs card), retention synergy (a user with both is materially more retained), and a future pricing synergy (a Node + Mesh “Gillish Suite” bundle, OPEN, don’t ship before both standalones have organic demand or the bundle becomes the only thing anyone buys). What Better Together is not: a hard dependency, a soft-merge of the products, or a way to share user data without consent , the bridge does one read of one transient (Node’s graph cache), no PII, no cross-plugin DB access.

Branding & UX#

Visual identity inherits Node: a mesh / lattice icon in the same gill-arc curve language (two icons read as siblings), Node’s teal-blue / dark-grey / light-beige palette, system-sans chrome with monospace for URL lists and anchor-text data. Five UX principles: fast time-to-first-value (first crawl within 30 seconds of activation, no mandatory wizard); progress is always visible (crawls take 5–25 min; silent waiting is the #1 support driver); errors explain rather than blame (“Cloudflare is blocking us, here’s how to paste your cookies”, not “403 Forbidden”); the Compare tab is the headline view (default landing tab when a crawl finishes); insights drive action (every ⚠ chip is a clickable drill-down).

Success metrics#

  • Activation: time-to-first-crawl median <15 min; first-crawl completion rate >75%; Cloudflare-challenge encounter rate monitored (tune the realistic-UA strategy if >25%).
  • Engagement: 3+ crawls / mo for Pro, 1+ for Free; >70% of Pro users open Compare on every crawl; >40% of Pro users export CSV at least once.
  • Commercial: Free → Pro 4–6% within 90 days; year-2 renewal >65%; multi-site adoption 15–25% of Pro.
  • Strategic: >35% of Mesh installs also run Node within 12 months (Better Together health); support resolution <24h; wp.org rating >4.6.
  • Explicitly NOT optimised: raw install count, DAU, crawls / day, Mesh is an occasional power tool; per-user weekly / monthly is the meaningful unit.

Strategic non-goals#

Load-bearing strategically, not just technically. Not a real-time crawler; not a Screaming Frog / Ahrefs replacement; not a multi-competitor overlay in v1; not a topical NLP analyser. Plus: not a SaaS (everything runs in the user’s own WP install, lower COGS, no infra to scale, no SOC 2 / GDPR-controller exposure on our end); not a marketplace product (wp.org + own-site, no CodeCanyon, we control the customer relationship); not a feature-bundling exercise (every rank-tracker / schema-validator addition dilutes the single-purpose positioning).

Open strategic questions#

Consolidated for the author’s decision at pickup time:

  • Pricing model: freemium working hypothesis; final call at Phase 4 entry.
  • Free-tier limits: 250 pages / 1 active crawl is a placeholder; tune from real install data (do free users convert at the cap or abandon?).
  • Pro multi-site bundle pricing: $99 / year / 5 sites is a placeholder; Linda will tolerate higher.
  • Suite bundle (Node + Mesh): v1 or wait for organic standalone demand? Working recommendation: wait, revisit at 12 months post-launch.
  • wp.org submission readiness: confirm wp.org’s stance on crawler-capable plugins before banking on the free-tier channel (pre-Phase-4 inquiry).
  • Internationalisation timing: ship translations at v1 or wait for demand data? Working recommendation: wait, pull-driven.
  • Marketing site: standalone gillish.com/mesh or a sub-tab? Working recommendation: sub-tab until revenue justifies the SEO investment.

Definition of done (v1 launch)#

Mesh can ship to wp.org + own-site Pro when all of: all five phases shipped per plan §17; wp.org review passed (or the own-site fallback triggered); Lemon Squeezy (or chosen alternative) licensing live; the gillish.com/mesh sale page live with FAQ + privacy policy + copy-paste GDPR paragraph; a manual end-to-end test on three real competitor sites (non-Cloudflare baseline, free-tier Cloudflare realistic-UA path, paste-cookies path); at least one Node + Mesh side-by-side test proving the bridge auto-loads the user’s graph from Node’s cache; in-admin support docs live; the launch sequence drafted. Anything not on that list is post-launch , the launch is not gated on nice-to-haves.

This brief is a 2026-05-02 snapshot and will go stale. It is revisited at every phase transition (pricing, roadmap, metrics, open questions), rewritten at launch (definition of done → retrospective), and re-grounded with real numbers at 90-day and 12-month post-launch. The implementation plan is on the Foundation plan page; the code is the ultimate source of truth.