Skip to main content
All articles
MethodologyScoringESGPrideScore

PrideShow Scoring Methodology — How Every Score Is Computed

Five engines power every ranking on PrideShow: MNC Inclusion Index, PLC ESG Score, NGO Impact Score, SME Quality Score, KOL PrideScore. Weights, formulas, signal sources — published in full.

Translucent radar chart with four glowing pillars representing scoring dimensions
Share

Key Takeaways

  • Five segment-specific engines compute every public ranking on PrideShow. There are no paid placements, no manual rank overrides, and no advertising weights.
  • Each engine publishes its sub-score weights, signal sources, and tier ladder. The numbers on this page match the formulas in src/lib/scoring.ts line-for-line.
  • Scores are recomputed nightly by a GitHub Actions cron at 18:00 UTC (01:00 Asia/Bangkok). Source data refreshes (Apify scrapes, Wikipedia infobox passes) are scheduled separately.
  • Where a partnership agreement references this page (e.g. Schedule B2 of every signed Master Inclusion Partnership Agreement), PrideShow is bound to give the partner not less than 30 days' written notice of any methodology change that would result in a downward revision of any of their entities' score by more than one tier.
  • Methodology version: v1.0, published 29 April 2026. Material changes bump the version and surface a delta summary at the top of this page for at least 90 days.

Every score we publish is computed, not curated. Five segment-specific engines power every ranking on prideshow.org: MNC Inclusion Index, PLC ESG Score, NGO Impact Score, SME Quality Score, and KOL PrideScore. The weights, sub-scores, and signal sources are all published below — verify the math yourself.

The promise

These five engines are the only inputs to ranking on prideshow.org. There are no paid placements, no manual rank overrides, no advertising weights, and no editorial favourites. Every score is re-computed from public data and self-attested signals on a nightly schedule. Where a clause in a partnership agreement references this page, PrideShow is bound to give the partner not less than thirty (30) days' written notice of any methodology change that would result in a downward revision of any of their entities' score by more than one tier.


MNCs — Inclusion Index

The Inclusion Index re-weights ESG signals toward the depth a multinational can demonstrate in Thailand specifically. It does not require SET listing or Thai SEC 56-1 disclosure (which most foreign-HQ MNCs cannot file by definition); instead it rewards multi-property Thai presence, international disclosure adoption, named DEI leadership, and employer scale. Reference implementation: computeMncInclusionScore() in src/lib/scoring.ts.

Sub-scoreWeightFormula
Thailand Presence Depth25%Thai child venue count → 1 = 30 pts; 2–4 = 55; 5–14 = 80; 15+ = 100
International Frameworks25%TCFD / CDP / SASB / FTSE4Good / DJSI = 20 pts each, capped at 100
DEI Leadership25%dei_highlights count (1 = 25, 3 = 40, 5 = 55, 7+ = 65) + 35 if any item explicitly mentions LGBTQ+ / Pride / queer / rainbow / sexual orientation. Capped at 100.
Audit + Disclosure15%GRI alignment 60 pts. Recent SEC 56-1 (within 2 years) 25 + 15 pts. Capped at 100.
Scale Amplifier10%Requires ≥1 DEI policy item. <1k employees = 15; 1k+ = 30; 10k+ = 55; 50k+ = 80; 100k+ = 100. Zero employees or zero DEI items = 0.

Tier ladder (MNC Inclusion Index)

TierThreshold
PlatinumTotal ≥ 80
Gold65 – 79
Silver45 – 64
Unrated< 45

How signals are sourced (MNC)

  • Thailand venue count: derived from D1 entities table where parent_entity_id = MNC parent and is_published = 1.
  • International framework adoption: boolean columns on esg_scores (tcfd_aligned, cdp_disclosed, sasb_aligned, ftse4good_member, djsi_listed). Sourced from public sustainability disclosures and framework membership lists.
  • DEI highlights: JSON array on esg_scores.dei_highlights, populated from corporate sustainability reports, Wikipedia infobox text, and verified claim-flow updates.
  • Employee count, GRI alignment, SEC 56-1 filing year: structured fields on esg_scores, populated from corporate filings.

PLCs — ESG Score

The ESG Score is calibrated for SET-listed Thai issuers. It rewards GRI alignment and recent Thai SEC 56-1 ONE REPORT filings (the universal disclosure backbone for the SET), then layers DEI policy depth, supplier diversity, and community investment on top. Reference implementation: computeEsgScore() in src/lib/scoring.ts.

Sub-scoreWeightFormula
LGBTQ+ Policy30%dei_highlights count → 25 / 45 / 60 + 25 if any item explicitly mentions LGBTQ+ / Pride / queer / rainbow / sexual orientation + 15 if employer ≥ 10 000 with any DEI. Capped at 100.
Supply Chain Diversity25%LGBTQ+ / diverse supplier count: 1+ = 25; 5+ = 50; 15+ = 75; 30+ = 100.
Community Investment25%NGO partnerships (1 = 15, 2 = 30, 5 = 50, 10+ = 70) + CBaaS hours (1+ = 10, 50+ = 20, 200+ = 30). Capped at 100.
Reporting Transparency20%GRI 50 + SEC 56-1 30 + recency bonus 20 (within 2 years) + TCFD / CDP / SASB / FTSE4Good / DJSI bonuses (15 / 15 / 10 / 10 / 10). Capped at 100.

Tier ladder (PLC ESG)

TierThreshold
PlatinumTotal ≥ 80
Gold65 – 79
Silver45 – 64
Unrated< 45

How signals are sourced (PLC)

  • GRI alignment, SEC 56-1 filing year, employee count, parent company: structured fields on esg_scores, populated from SET ONE REPORT (form 56-1) filings and Wikipedia infobox extraction.
  • DEI highlights: JSON array, populated from sustainability sections of 56-1 filings and corporate sustainability microsites.
  • NGO partnership count and CBaaS hours: structured fields on esg_scores; partnership counts cross-referenced against NGO partner listings on PrideShow.org.
  • International framework membership: cross-checked against published TCFD signatory, CDP discloser, SASB-aligned, FTSE4Good index, and DJSI index lists annually.

NGOs — Impact Score

A simple three-pillar measure of how much community work an NGO actually delivers. No weighting magic — every point is earned linearly against benchmarks calibrated against Senior Facilitator NGOs in the directory. Reference implementation: computeImpactScore() in src/lib/scoring.ts.

Sub-scoreMax PointsFormula
Communities Served40Linear from 0 to 120 000 unique community beneficiaries
Training Hours Delivered30Linear from 0 to 3 200 documented facilitation hours per year
Corporate Clients Served30Linear from 0 to 180 distinct corporate engagements (CBaaS or otherwise)

How signals are sourced (NGO)

  • Communities served, training hours, and corporate-client counts are self-attested via the dashboard claim flow.
  • Senior Facilitator NGOs (Pink-tier) are independently audited annually by PrideShow staff against APCOM and RSAT facilitation logs.
  • Self-attested numbers above the platform average for an NGO's scale tier are flagged for manual review before they affect public ranking.

SMEs — Quality Score

Quality combines independent third-party signals (Google rating + review volume) with PrideShow-specific markers (LGBTBE certification + Pink signals derived from Google Business Profile self-identification). Reference implementation: computeQualityScoreV2() in src/lib/scoring.ts.

Sub-scoreMax PointsFormula
Google Rating30(rating ÷ 5) × 30. A 4.5★ business earns 27 pts; 4.0★ → 24.
Review Volume20log10(reviewCount + 1) ÷ log10(1 001) × 20. 100 reviews → ~13 pts; 1 000+ → 20.
LGBTBE Certification15Certified 15 / Ally-Verified 9 / Pending 4 / Unclaimed 0.
Pink Signals15LGBTQ+ friendly (5) + Trans safe-space (4) + LGBTQ+-owned (6). Capped at 15.
Profile Completeness105 if amenity details + min(serviceCount, 5).
Community Signals10Rating tier (≥ 4.5★ = 5 / ≥ 4.0★ = 3) + review volume (> 100 = 5 / > 20 = 3). Capped at 10.

How signals are sourced (SME)

  • Google rating, review count, opening hours, services, and Pink signals: scraped via Apify Google Maps actor and stored on sme_profiles. The additional_info JSON blob is parsed for "Crowd: LGBTQ+ friendly", "Crowd: Transgender safespace", "From the business: LGBTQ+-owned", and similar self-identification tags.
  • LGBTBE certification: tier set by PrideShow staff after the four-step claim wizard at /dashboard/lgbtbe (corporate registry lookup, domain proof, video verification, public challenge window).
  • Pink signals derive from Google Business Profile self-attestation by the business owner; PrideShow does not independently verify these except as part of the LGBTBE certification flow.

KOLs — PrideScore

PrideScore measures creator authenticity, audience trust, multi-platform reach, and demonstrated real-world LGBTQ+ community impact. Raw follower count is one input among many — by design, a 5 000-follower micro-creator with 12% engagement on advocacy content can outscore a 1M-follower lifestyle macro-creator. Reference implementation: computePrideScore() in src/lib/scoring.ts.

Sub-scoreWeightFormula
Content Authenticity35%Defined niches (15 + 10 or 15 by depth) + recent-post activity (15 or 25) + bio (10) + IG post volume (10 / 15 / 20) + IG business account (10) + TT video volume (5). Capped at 100.
Community Trust30%TT engagement rate dominant: 1% = 15, 3% = 25, 5% = 35, 10% = 45, 15%+ = 50. + IG verified (20) + TT verified (20) + scale bonuses (4 / 7 / 10 by total follower tier). Capped at 100.
Platform Diversity20%1 platform = 25, 2 = 55, 3 = 80, 4+ = 100. Active platforms among Instagram, TikTok, YouTube, Facebook.
Impact Actions15%Advocacy / rights / community niche match (up to 45) + Bangkok-based (15) + IG external link (15) + IG business category (10) + LGBTQ+ keyword in IG or TT bio (15). Capped at 100.

Audience tier (by total followers)

TierThreshold
Macro creator≥ 1 000 000 total followers
Mid-tier100 000 – 999 999
Micro creator5 000 – 99 999
Nano creator< 5 000

How signals are sourced (KOL)

  • Instagram + TikTok metrics (followers, posts, engagement rate, verified, bio, business category, external URL): scraped via Apify actors, refreshed quarterly.
  • YouTube subscribers and Facebook follower counts: cross-platform reach signals from claimed dashboard inputs.
  • Latest posts and content niches: parsed from Apify run output; niches derived from a categorisation pass over recent post captions and hashtags.
  • is_bangkok_based: derived from city field in kol_profiles, set during initial scraping or self-edited via /dashboard/entities/[id]/edit.

Letter grade — universal layer above every segment score

On top of every segment-specific score we render a universal letter grade for fast eyeballing in directory cards, profile pages, and outreach previews. The thresholds are the same regardless of segment.

LetterRange
A+≥ 85
A75 – 84
B+65 – 74
B55 – 64
C45 – 54
D< 45

What we don't score

Equally important as the formulas above is the list of things that cannot influence a public ranking on PrideShow.

  • No paid placements. Subscription tier, sponsorship status, and event ticket purchases do not adjust score or rank. Featured rails on directory pages are explicitly labelled as such.
  • No manual rank overrides. Staff cannot bump a score up or down. Tier reclassifications happen only when the underlying signal data changes — the next nightly cron picks them up.
  • No advertising weight. Spend on PinkMarket workshops, retainer engagements, or PrideShow 2026 sponsorships is invisible to the scoring pipeline.
  • No editorial favourites. Stories on the Rert. blog do not lift profile rank. Author opinion is constrained to /rert and never bleeds into the directory.
  • No personal data feeds the score. Aggregate Google Business Profile rating and review counts are public; we do not score on individual user behaviour, identity, or PII.

How often this changes

Score recompute

Scores are recomputed nightly by a GitHub Actions cron at 18:00 UTC (01:00 Asia/Bangkok). Each run is logged on the admin scrape jobs table with source score_recompute. Source-data refreshes (Apify scrapes, Wikipedia infobox passes) are scheduled separately.

Methodology version

Currently v1.0, last updated 29 April 2026. Material changes to weights, thresholds, or signals bump the version and surface a delta summary at the top of this page for at least 90 days.

30-day change-notice clause

Where partnership agreements reference this page, PrideShow is bound to give the partner not less than thirty (30) days' written notice of any methodology change that would result in a downward revision of any of their entities' score by more than one tier. Same-tier or upward changes do not trigger the notice but are still surfaced in the change history below.

Change history

  • v1.0 · 29 Apr 2026 · First public methodology disclosure across all 5 segments. Bound to all MIPAs in force from this date.

Found a bug, or have a primary-source dataset we should pull in? Write to research@prideshow.org — or claim the affected profile and edit the underlying signals yourself.

Contact research
P

PrideShow Research

Methodology Team

Written by the PrideShow editorial team in Bangkok. Data-backed, community-informed, and always naming our sources. Want to write for Rert.? Pitch us at editorial@prideshow.org

MethodologyScoringESGPrideScoreInclusion IndexReference
PrideShow

Thailand's Pink Economy platform

Directory, jobs, events, and the Pink Economy community. Join us.

Learn about PrideShow 2026