# wellnessclub.guide

Site grounding for agents without the wellnessclub.guide repository: its seven charter files, unchanged except that headings sit two levels lower and every term id the pinned version defines, in the frontmatter blocks too, is followed by its label from the pinned version. The YAML blocks are therefore for reading, not parsing; the repo files are the source.

- Domain: wellnessclub.guide
- Pins: editorial-charter@1.3.1, portfolio-icp@1.0.0
- Repo: 2d0e59c0bd68dcfc5c71b98fa08c4aef3a5313d0 (committed 2026-10-03T14:43:04-07:00)
- Built 2026-10-05T03:25:29+00:00
- Pages: https://taxonomy.tfw.bz/sites/wellnessclub.guide/

## BRAND.md

Version 1.1.1 · status draft · sha256 bafa26f9f8c0e72d372f829ec16a91db259b580c7f193106a0d0ba75b3f062ea

```yaml
charter: 1
version: 1.1.1
profile: editorial-charter@1.3.1
domain: wellnessclub.guide
status: draft
reviewed_by: ""
archetype: charter:brand-archetype-sage (sage)
secondary_archetype: charter:brand-archetype-everyman (everyman)
claims:
  - id: c1
    text: wellnessclub.guide is not affiliated with any club, spa or brand it lists.
    basis: charter:claim-basis-documented (documented)
    source: content/about.md
  - id: c2
    text: wellnessclub.guide launched in September 2026 and has published no venue listings yet.
    basis: charter:claim-basis-documented (documented)
    source: PRODUCT.md State; content/about.md
  - id: c3
    text: Facility rows carry a check date.
    basis: charter:claim-basis-documented (documented)
    source: "https://wellnessclub.guide/ (Last checked field: the date each value was last verified against the venue; read 2026-10-03, no rows published yet); STRATEGY.md bet 2"
```

### BRAND

#### Name and entity
wellnessclub.guide, published by Thomas Prommer. Entity home: https://wellnessclub.guide/en/about/ (`about.manifest.json`). Contact comms@flywheel.bz.

#### Promise
Temperatures, prices and what a visit or membership includes, laid out as comparable rows, so you can choose a wellness club or spa without reading the brochure.

#### Personality
The sage, with an everyman streak. A spec sheet in sentences: numbers first, units always, plain definitions of day spa, med spa and circuit. It sells nothing and makes no health promises about heat or cold.

#### Visual pointers
Locked direction "Thermal Circuit": see `design/tokens.json`, `DESIGN.md` and `design/DIRECTION.md`. A temperature scale from cold plunge to Finnish sauna is the filter.

#### Do / Don't
Do: lead with the comparison criterion, then the range. Do: give temperatures in digits with units. Do: date every facility row. Do: define day spa versus med spa once.
Don't: invent listings or figures. Don't: claim health benefits of heat or cold exposure. Don't: write "sanctuary", "oasis", "rejuvenate" or "detox". Don't: imply clinical credentials.

## VOICE.md

Version 1.0.1 · status draft · sha256 cab2e124b740ea21beff6c4f229e4b1a570b22c3ed4fd62900f232fc3ea37dc0

```yaml
charter: 1
version: 1.0.1
profile: editorial-charter@1.3.1
domain: wellnessclub.guide
status: draft
reviewed_by: ""
register: charter:voice-register-consumer (consumer)
person: charter:voice-person-third (third person)
languages: [en, de, es, fr, pt]
addresses: [spa-comparison-shoppers]
essence: Temperatures, prices and what is included, so you can compare without the brochure.
```

<!-- ASSUMED DEFAULT, 2026-09-17: recommended voice option 'a. The Spec Sheet' from ~/reports/site-strategy/wellnessclub.guide.json, pending Tom's review in ~/reports/site-decisions/index.html. If Tom picks another voice this file is replaced. -->

### VOICE: wellnessclub.guide (wellnessclub.guide)

> Loaded by /humanizer (Step 0) and the content publishing gate (drafting Step 1
> + humanizer Step 3). If absent, both fall back to generic mode.

#### 1. Identity & Register
- Voice owner / who speaks: wellnessclub.guide editors, third person with second-person advice
- Register: product
- Language/locale: en (primary); de, es, fr, pt via DeepL
- One-line essence: "Temperatures, prices and what is included, so you can compare without the brochure."

#### 2. Audience
- Primary audience: mixed: adults comparing spas and wellness memberships
- Reader's job-to-be-done: Shortlist and choose a spa or club on facts
- Assume they know: what a sauna, steam room and massage are
- Always explain: day spa vs med spa, circuit, set points, price band and membership terms

#### 3. Tone Axes
- Formal  ──●────  Casual
- Authority  ──●────  Peer
- Serious  ─●─────  Playful
- Concise  ●──────  Expansive
- Default editorial_track: factual

#### 4. Person, POV & Cadence
- Person: third person for facts, second person for how to choose
- Sentence rhythm: Short declaratives with numbers in digits and units
- Paragraph length: 1 to 3 sentences
- Structural tics: Lead with the comparison criterion, then the range. Every facility page opens with a spec row (temperatures, circuit, price band, credentials).

#### 5. Lexicon
- Preferred terms: set point, circuit, price band, day pass, membership, cold plunge, Finnish sauna, steam room, clinician
- Banned phrases (beyond humanizer's generic list): "sanctuary", "oasis", "rejuvenate", "detox", "holistic healing", "luxurious escape"
- Capitalization & spelling rules: Temperatures as 80 to 90 °C with °F in parentheses on en pages; med spa lowercase; venue names as registered
- Domain-jargon level: Low to medium; defines med spa, contrast therapy and circuit once.

#### 6. E-E-A-T / Experience Claims
- Authentic experience this voice can claim: None personal. Data comes from venue pages and verified submissions, dated.
- Named author + bio source: No named author yet. Byline is "wellnessclub.guide editors" until Tom assigns a real person; never invent one, and never imply clinical credentials.
- Quantified credential for bios: None yet. If a clinician reviewer is added, show license type, state and number verifiable in the state lookup.
- Citation posture: Venue pages with check date; peer-reviewed studies for any health effect with study type and population named.
- Original-data hooks this voice owns: Structured facility rows (set points, circuit length, price band, credentials) and their check dates.
- "What I got wrong" angle: Point out where marketing numbers mislead, such as a "hot" plunge pool that is only a warm whirlpool.

#### 7. Gold-Standard Examples
- Example A (draft anchor, not yet published; replace with a live paragraph once pages ship): "When comparing wellness spas, start with what you will actually use. A Finnish sauna is usually run between 80 and 100 °C with low humidity, while a steam room sits much lower, often around 40 to 50 °C, but near full humidity. A cold plunge can mean anything from a chilled pool to water under 10 °C, so ask for the set point. Then check what the day pass or membership includes: many spas charge separately for treatments and limit facility access to certain hours. A spa with fewer rooms but clear prices is often the better choice."
  - Why on-voice: Criterion-first, specific numbers, neutral advice, no brochure words.
- Example B (draft anchor, not yet published): "Day spa: facilities and treatments by non-medical staff. Med spa: cosmetic medical procedures under a licensed clinician. Some venues are both; the listing shows which services fall under which."
  - Why on-voice: Spec-row definition style used on comparison pages.

#### 8. Anti-References
- Luxury spa brochure copy ("a sanctuary for the senses")
- Longevity influencer claims
- Med spa promotional language ("turn back the clock")
- Generic AI listicles

#### 9. Per-Language Notes
- de: Sie; German Therme and Sauna culture terms used natively (Saunalandschaft, Aufguss, textilfrei); no health promises that the HWG would treat as advertising claims.
- es: tú for general copy, usted avoided unless a market page targets Spain formally; balneario, circuito termal, spa.
- fr: vous; thermes, spa, parcours, bain froid; health claims phrased as study findings, not promises.
- pt: você; check pt-BR vs pt-PT per target market; termas, spa, circuito.

## STRATEGY.md

Version 1.0.1 · status draft · sha256 e99f9d43c4384000c723674b32fe32db3493f821e5840c3b929482e3795b3f1c

```yaml
charter: 1
version: 1.0.1
profile: editorial-charter@1.3.1
domain: wellnessclub.guide
status: draft
reviewed_by: ""
mission_shape: charter:mission-shape-serve-x-to-achieve-y (serve X to achieve Y)
horizon: charter:horizon-12m (12 months)
positioning:
  primary: charter:positioning-axis-authority-depth (authority depth)
  secondary: [charter:positioning-axis-locality (locality)]
audiences:
  - kind: charter:audience-kind-consumer (consumer)
    name: Spa comparison shoppers
    segment: spa-comparison-shoppers
    job_to_be_done: Shortlist and choose a wellness spa or club near them on facilities, price and what is included.
profile_required: true
```

### STRATEGY

#### Mission
We help adults comparing wellness clubs and spas shortlist and choose on facts, by laying out facilities, set points, price bands and membership terms side by side, city by city.

#### Positioning
Depth first: structured facility rows with check dates, not atmosphere. Locality second: the guide is organised by city and membership type (`content/about.md`). We concede speed of answer, since rows need checking, and we concede deal-site breadth.

#### Audiences
Spa comparison shoppers: US adults choosing between local day spas and wellness clubs, who need the facilities, price band and inclusions in one place. They know what a sauna and a massage are. They need day spa versus med spa, circuit and set points explained. Source: `briefs/strategy.md` ICP a (an assumed default pending Tom's review), `VOICE.md` section 2.

#### Competitors
Spa and club websites that describe atmosphere. Deal sites such as Groupon and Spafinder. Review aggregators. Med spa marketing pages. Source: `briefs/strategy.md` Pains and Monetization.

#### What we will not do
No invented listings, venues or figures, and no pages about named businesses the site does not list (`briefs/HOLD.md`). No health claims for heat or cold exposure. No affiliate links, ad slots or listing fees until Tom confirms, and none on medical services such as IV therapy or injectables (`briefs/strategy.md`). No claim of affiliation with any venue.

#### Bets for the horizon
1. Replace the held business-name pillars with city and facility-type pages and publish the first verified city, so the site can leave noindex (moves pages_indexed).
2. Publish the structured facility rows with check dates as the site's own reference (moves content_engaged).
3. Earn the head query "wellness spa" through the day spa versus med spa explainer (moves gsc_clicks).

## AUDIENCE.md

Version 1.1.1 · status draft · sha256 8110c2093a36d6ee84c2b4b2c52d0596624a0e7c19c091555bd8dcdde678f9f4

```yaml
charter: 1
version: 1.1.1
profile: editorial-charter@1.3.1
domain: wellnessclub.guide
status: draft
reviewed_by: ""
segments:
  - slug: spa-comparison-shoppers
    name: Spa comparison shoppers
    kind: charter:audience-kind-consumer (consumer)
    archetype: icp:unmapped (Unmapped)  # no pinned archetype fits a local spa comparison shopper; a new archetype is a taxonomy change
    priority: charter:segment-priority-primary (primary)
    job_to_be_done: Shortlist and choose a wellness spa or club near them on facilities, price and what is included.
    funnel_stages: [charter:funnel-stage-consideration (consideration), charter:funnel-stage-decision (decision)]
    languages: [en]
    regions: [US]
    pains:
      - Spa sites describe atmosphere, not facilities or prices.
      - It is hard to tell a day spa from a med spa.
      - Reviews are scattered and inconsistent.
    channels: [charter:channel-organic-search (organic search)]
    size_signal: {metric: monthly_searches, value: 22200, unit: count}
    evidence:
      default: {basis: charter:evidence-basis-researched (researched), source: "PRODUCT.md Audience (adults comparing wellness clubs or spa memberships before committing); content/about.md; briefs/strategy.md ICP a", as_of: 2026-10-03}
      regions: {basis: charter:evidence-basis-assumed (assumed), source: "agent assumption 2026-10-03: briefs/strategy.md ICP a is a US comparison shopper; src/lib/site.mjs serves only en_US; other locales are planned but no market is named", as_of: 2026-10-03}
      channels: {basis: charter:evidence-basis-assumed (assumed), source: "agent draft 2026-10-03 from briefs/strategy.md 'Where they search' (search queries only)", as_of: 2026-10-03}
      size_signal: {basis: charter:evidence-basis-researched (researched), source: "briefs/keywords.json: keyword 'wellness spa', lang en, search_volume 22200", as_of: 2026-10-03}
```

### AUDIENCE

#### Spa comparison shoppers
Adults in the US who want a regular place to unwind, such as a day spa with sauna and steam, and are comparing a few local options by price, facilities and reviews. The trigger is stress, a gift or a move to a new area. Source: STRATEGY.md section Audiences, `briefs/strategy.md`.

#### Excluded audiences
Not written for: med spa business owners (the business-plan page is on hold, `briefs/HOLD.md`), readers who want one named venue reviewed, and venues seeking paid placement. Source: STRATEGY.md section What we will not do.

## MONETIZATION.md

Version 1.0.1 · status draft · sha256 3dd0bbe0bb3110dff58711f6136c5e08ff2dad46005f0e0b3e148ae34a7b907b

```yaml
charter: 1
version: 1.0.1
profile: editorial-charter@1.3.1
domain: wellnessclub.guide
status: draft
reviewed_by: ""
revenue_lines:
  - slug: affiliate-spafinder
    name: Spafinder affiliate, gift cards
    type: charter:revenue-type-affiliate (affiliate)
    partner: {name: Spafinder, entity: null, program_url: "https://www.spafinder.com/affiliate-program/"}
    program_status: charter:program-status-assumed (assumed)
    commission_model: charter:commission-model-unknown (unknown)
    placements: [charter:placement-type-inline-link (inline link)]
    segments: [spa-comparison-shoppers]
    kpi_key: affiliate_clicked
    status: charter:revenue-status-idea (idea)
    share_band: charter:revenue-share-band-minor (minor)
    start_trigger: "Tom confirms affiliate links; city pages must exist first"
    evidence:
      default: {basis: charter:evidence-basis-assumed (assumed), source: "agent draft 2026-10-03 from briefs/strategy.md Monetization option a; program page not read in this session", as_of: 2026-10-03}
  - slug: affiliate-booking-spa-hotels
    name: Booking.com affiliate, spa hotels
    type: charter:revenue-type-affiliate (affiliate)
    partner: {name: Booking.com, entity: null, program_url: "https://www.booking.com/affiliate-program/v2/index.html"}
    program_status: charter:program-status-assumed (assumed)
    commission_model: charter:commission-model-revshare-percent (revenue share)
    placements: [charter:placement-type-inline-link (inline link)]
    segments: [spa-comparison-shoppers]
    kpi_key: affiliate_clicked
    status: charter:revenue-status-idea (idea)
    share_band: charter:revenue-share-band-marginal (marginal)
    start_trigger: "Tom confirms affiliate links; needs weekend and Therme content"
    evidence:
      default: {basis: charter:evidence-basis-assumed (assumed), source: "agent draft 2026-10-03 from briefs/strategy.md Monetization option a; program page not read in this session", as_of: 2026-10-03}
  - slug: display-ads-informational
    name: Display ads on informational pages
    type: charter:revenue-type-display-ads (display ads)
    commission_model: charter:commission-model-rpm (RPM)
    placements: [charter:placement-type-display-slot (display slot)]
    segments: [spa-comparison-shoppers]
    kpi_key: ad_revenue_recorded
    status: charter:revenue-status-idea (idea)
    share_band: charter:revenue-share-band-marginal (marginal)
    start_trigger: "Tom confirms ad slots; ad network traffic minimum met"
    evidence:
      default: {basis: charter:evidence-basis-assumed (assumed), source: "agent draft 2026-10-03 from briefs/strategy.md Monetization option a", as_of: 2026-10-03}
```

### MONETIZATION

#### Revenue model
No revenue is live. `briefs/strategy.md` (option a, an assumed default pending Tom) lists consumer affiliate links (Spafinder gift cards, Groupon spa deals, Booking.com spa hotels) and display ads, all marked "not active until Tom confirms". Every line below is an idea and carries no number.

#### Disclosure rules
Disclose affiliate links clearly next to the link (FTC native advertising guide). German pages label links "Werbung" at the link. Any wellness benefit stated to support a sale needs competent and reliable scientific evidence. Source: `briefs/strategy.md` Compliance.

#### Not monetised
No affiliate links on medical services (IV therapy, injectables). No paid ordering of venues. Deals stay secondary to facility data so the site does not read as a coupon site. Source: `briefs/strategy.md`.

#### Spafinder affiliate, gift cards
An idea. Gift card links on comparison and city pages. Terms not read in this session; no payout is recorded.

#### Booking.com affiliate, spa hotels
An idea, tied to weekend and Therme content that is not planned in the current page map. Terms not read in this session; no payout is recorded.

#### Display ads on informational pages
An idea only. `briefs/strategy.md` names ad networks with traffic minimums; none is met or applied for.

## KPI.md

Version 1.0.1 · status draft · sha256 130099930b5863b43ff0b59428f1156fe4ccbc8e82b1e590defe92a082536f1d

```yaml
charter: 1
version: 1.0.1
profile: editorial-charter@1.3.1
domain: wellnessclub.guide
status: draft
reviewed_by: ""
template: charter:kpi-template-editorial-traffic (editorial traffic)
template_override: ""
kpis:
  - {key: pageview_recorded, role: charter:kpi-role-primary (primary)}
  - {key: gsc_clicks, role: charter:kpi-role-secondary (secondary)}
  - {key: gsc_impressions, role: charter:kpi-role-secondary (secondary)}
  - {key: avg_position, role: charter:kpi-role-secondary (secondary)}
  - {key: content_engaged, role: charter:kpi-role-secondary (secondary)}
  - {key: newsletter_subscribed, role: charter:kpi-role-secondary (secondary)}
  - {key: affiliate_clicked, role: charter:kpi-role-secondary (secondary)}
  - {key: crawl_errors, role: charter:kpi-role-guardrail (guardrail)}
  - {key: pages_indexed, role: charter:kpi-role-guardrail (guardrail)}
catalog_sha: 4304fc97e9ac457725bdc25dcbb724c36257a707cbb3c237b69cd3e7ba04ac39
```

### KPI

#### Why these metrics
pageview_recorded is the number an editorial site is run on, and no listing or conversion exists yet, so reach is the primary. gsc_clicks, gsc_impressions and avg_position show how the spa and city queries are doing. content_engaged shows whether visitors use the comparison rows. newsletter_subscribed and affiliate_clicked stay enabled from the editorial-traffic template for later use and for the affiliate ideas in MONETIZATION.md. crawl_errors and pages_indexed are the guardrails while the city pages grow.

#### Reading guide
Weekly pageview_recorded against the `(site)` value target in kpi-mgmt once the owner sets one: no target exists yet and this file does not propose one. Rising gsc_impressions with a flat gsc_clicks and a poor avg_position means the pages are found but not chosen. Rising pageview_recorded with a flat content_engaged means the traffic is not reading. A rise in crawl_errors or a fall in pages_indexed overrides every other reading.

#### Review cadence
Quarterly, with the 12-month bets in STRATEGY.md.

## taxonomy/binding.yaml

Version 1.1.1 · status draft · sha256 97fbd56ea049743b03f107dd0b65e06f7dadd00551910a4900447568768ad6b8

```yaml
charter: 1
version: 1.1.1
profile: editorial-charter@1.3.1
domain: wellnessclub.guide
status: draft
reviewed_by: ""
iab_content: ["iab:223"]
icp_profile: portfolio-icp@1.0.0
content_profile: null
languages: [en]
regions: [US]
```
