Productive IT logo PRODUCTIVE IT · BrandGrowth OS docs

How scoring works — the BrandGrowth OS methodology

Every number BrandGrowth OS shows you comes from deterministic, published rules. The same inputs always produce the same result, each score traces back to the evidence behind it, and AI may phrase a result but never produces one. This page is the public methodology: what each engine measures, how the weights work, and — just as important — what happens when we cannot measure something.

The five promises behind every score

  1. Scores are 0–100. Sub-scores are computed as fractions and scaled at output, so a section and the total always agree.
  2. Every displayed number carries four labels: method (verified · self-reported · estimated · not-measured), source, freshness (how old the evidence is), and confidence (0–1).
  3. Not-measured never counts against you. A check we could not read is removed from the total it would have contributed to, listed explicitly as "we could not verify X", and turned into an improvement opportunity instead of a penalty. A site with no HTTPS does not score zero — the missing padlock becomes a priority fix. What lowers a score is measured weakness, never missing evidence.
  4. Confidence is shown, not hidden. Each score is multiplied by a confidence factor between 0.85 and 1.15, derived from how trustworthy the inputs were. When the inputs are weak, the product shows a range instead of a single number.
  5. Nothing is invented. No fee, reach figure, publication date or metric is ever guessed: unavailable means "not measured". Self-reported answers are labelled and deliberately count for less than anything we could verify.

Weights are configuration, not code — they can be tuned per workspace without a deploy. A change to a formula, however, creates a new engine version, and every stored score records the version that produced it, so any number can always be explained by the rules in force when it was calculated.


1. Visibility Radar — Visibility Score /100

A scan looks at your public presence the way a search engine and a customer would: the homepage, your robots and sitemap files, response headers, your TLS certificate, the domain's registration age, a linked contact page when one exists, and one deliberate not-found probe. Thirty checks across five weighted sections produce the score. Local and social checks marked (SR) are self-reported and visually labelled; (SR→V) means self-reported but we attempt public verification.

Website — 35 pts (all measurable)

# Check Wt Pass rule
1 site reachable 4 HTTP 200 (or 3xx→200) on the homepage
2 HTTPS enforced 5 http:// redirects to https://
3 certificate valid 3 TLS certificate valid ≥ 30 days
4 mobile viewport 5 viewport meta tag present
5 title quality 4 non-empty title under 160 characters
6 meta description 4 non-empty description, 50–160 characters
7 social preview basics 5 Open Graph title + image present
8 canonical link 3 canonical link resolves
9 custom 404 2 the probe URL returns a 404 status, not 200

SEO — 25 pts (all measurable: on-page readiness)

# Check Wt Pass rule
10 single H1 4 exactly one H1 heading
11 heading hierarchy 3 at least two H2 headings
12 image alt sample 4 ≥ 80% of sampled images have alt text
13 content depth 4 extracted homepage text ≥ 300 words
14 structured data 4 JSON-LD or microdata present
15 sitemap valid 4 sitemap parses and is non-empty
16 robots sane 2 allows crawling (no blanket disallow)

We never claim keyword positions. This section measures how ready your pages are to be read and indexed — not where you rank, which we cannot verify from a single site fetch.

Local — 15 pts (three self-reported)

# Check Wt Pass rule
17 name, phone, address on site 5 all three found on the homepage or contact page
18 Google Business Profile claimed (SR→V) 4 self-reported; verified when a maps link is found on the site
19 local keyword use 2 the business city or area appears in title, description or body
20 map or directions link 2 a maps embed or directions link on the site
21 opening hours shown 2 hours text on site (SR); verified when parsed

Social — 15 pts (measured subset)

# Check Wt Pass rule
22 profiles linked & reachable 4 the site links to the declared platforms and those URLs respond
23 brand consistency 3 site name or title contains the brand name
24 handle consistency 3 the same handle across at least two declared platforms
25 presence breadth 2 at least two declared platform accounts
26 activity recency 3 last public post under 60 days, only when a public feed is fetchable

Trust — 10 pts

# Check Wt Pass rule
27 privacy policy page 3 linked, non-empty page
28 terms page 2 linked, non-empty page
29 domain age 3 registered at least a year ago (a new domain is noted, not punished)
30 no mixed content 2 the homepage loads no insecure subresources

What a low score actually means

Take a site whose HTTPS checks fail while everything else passes, and whose local and social footprint is partly unverifiable. Its score lands in the high 70s — not because missing evidence was punished, but because a third of the audit could not run and the parts that did were mostly healthy. Each section scales by the points that could be measured, a check that runs and fails stays in its section's denominator (unlike one that cannot run at all), and the failures surface as Critical Opportunities rather than silently shrinking the number.

Improvement opportunities

Failures and unverifiable checks become Critical Opportunities — the lead-gen payload of a report — each with a severity and the area of work it falls in:

Trigger Severity Area
HTTPS missing or certificate invalid critical web
no mobile viewport critical web
no name/phone/address found critical local
Google Business Profile unverified and no maps link important local
no structured data important seo
no privacy policy important trust
social profile exists but is inactive or unverifiable important social
thin homepage content minor seo
only one social platform declared minor social

2. BrandMatch — Match % with a breakdown

BrandMatch compares a partner against your business profile (and any campaign overrides you set). Four weighted components, each shown separately so no single number has to be taken on faith:

Match % = 100 × (0.40·audience + 0.20·geography + 0.25·category + 0.15·budget), then multiplied by the confidence factor.

When a component cannot be measured, its weight is removed and the rest is renormalised — the partner is not punished for our blind spot. A partner with no fee data scores on the other three and shows a "not measured" badge on budget. You get the total, the four sub-scores, the confidence, and a label per input.

3. Sponsorship Intelligence — Brand Relevance Score /100

For a future-dated, active opportunity:

Component Weight How it scores
Category relevance 0.35 fit between your industry and the event's categories
Geography 0.25 event city in your markets scores 1; a national brand 0.8; same state 0.5
Scale fit 0.15 audience size against your budget band: overlap 1, within 2× half, else 0
Timing 0.15 credit grows with how far ahead the event is, full from 120 days out
Source quality 0.10 how the opportunity was found and how confident its source is

Relevance = 100 × Σ(weight × component) × confidence, with a missing component's weight redistributed rather than counted as zero. An event with no footfall figure and no parseable start date is not dismissed — it simply scores on what is known, with the gap labelled. Unknown source quality scores lower than a verified public feed.

4. Partnership ROI

Every input is tagged as measured, a published benchmark, or manual (your own assumption). Manual inputs outrank benchmarks and are highlighted, and benchmarks always carry their source. From cost C, unique reach R, engagement rate e, audience overlap o, response rate r, margin m and average order value v:

relevant engagements  = R × e × o
cost per engagement   = C ÷ (R × e × o)
cost per 1,000 reach  = C ÷ (R ÷ 1000)
cost per qualified lead = C ÷ (R × o × r)
break-even revenue    = C ÷ m
break-even units      = break-even revenue ÷ v
affordability         = min(1, campaign budget ÷ break-even revenue)

Within a comparison set, options are ranked by:

Component Weight Basis
Cost efficiency 0.40 log-scaled cost per engagement, relative to the set's best and worst
Affordability 0.30 break-even revenue against your budget
Audience relevance 0.30 audience overlap

Ranking is scale-free: it compares your options against each other rather than against an absolute standard, so a small campaign can still rank its options honestly. Missing inputs leave the dependent metrics "not measured" — never a guess, and never an infinity.

5. Opportunity Engine — one priority list

Each engine's strongest results feed a single ranked list, so you are never choosing between four dashboards. A candidate's priority combines its own score with how much upside it carries, how actionable it is, and how fresh it is; a visibility finding weights severity and score gain most heavily, a partner weights match, ROI rank and actionability, and an opportunity weights relevance and timing. Where a component is genuinely unmeasurable it is dropped from the denominator instead of being scored as zero.

The Action Plan built from that list is ordered for effort:

  1. Quick wins — things you can fix yourself in under a day.
  2. Improvements we can make for you — opt-in, with the score gain estimated.
  3. Partnership and sponsorship candidates — each with a one-line rationale.

The plan refreshes weekly or on demand, and items track to done with the measured score change.

6. Growth Score — the dashboard headline

Growth Score = 0.25·Visibility + 0.20·Match pipeline + 0.20·Sponsor pipeline
             + 0.15·ROI readiness + 0.20·Action completion

It is a weighted mean of the sections that are actually measured. A section you have not used yet shows "not measured" with the action that fills it, and if nothing is measured yet the Growth Score is blank rather than a zero — an unstarted workspace is not a failing one.


What this page is not

It is not a ranking claim: we do not assert keyword positions, and we do not score anything we cannot see. It is not a black box: the checks, weights and pass rules above are the ones the product runs. And it is not a guess at what matters commercially — where we lack a number (a fee, a footfall, a response rate), the product says so, and the gap itself becomes a next step.

For how AI is used alongside these deterministic engines, see How BrandGrowth OS uses AI.