1.1 Welcome / Value Intro
The front door and the only public surface of the product. Its whole job is to carry an avoider to the first look without asking for a bank first.
This is the etalon node page: the first node specified with the template below, and the shape every other node page follows. It was chosen because it is the only indexed screen in the product, so it exercises the whole template including the full A-E SEO block that no other node needs. Source: docs/nodes/1-1-welcome.md. It supersedes the 1.1 section of onboarding.md and the Welcome templates in seo.md; those stay as the cluster and engine documents.
The node template
Every node page carries these lines, in this order. Nothing is added for completeness: a section with nothing true to put in it says so in one line and stops.
- Node, type, scope. Number, name, page or dialog or state, MVP or LATER.
- Purpose and jobs. One line of purpose; the jobs it closes, by their id.
- URL and breadcrumbs.
- Content blocks, mobile-first priority. The composition comes from the block bank, the rows marked TAKE for this page type, plus what the jobs of this node demand. A block that is not in the bank and traces to nothing is not added silently: it is named out loud, and either it enters the bank with a trace or it does not exist.
- Components and variants, from the shared library (GC1 to GC7).
- States. Guest, signed in, empty, loading, error, and whatever else is real here.
- Filters and facets, for listing pages only.
- Primary CTA. One understandable next step.
- Emotional support. If a mechanism from the table of emotional and social jobs lives on this node, it is named as job, mechanism, and where exactly on the page. The mechanism "microcopy" stays a marker: Voice writes the text, but the place for it must exist in the blocks now.
- Responsive. The mobile stack, then the desktop delta.
- SEO block A-E, on every indexed page. Private screens carry one line: noindex, no schema, and why.
Purpose and jobs
Carry an avoider from "I suspect I am paying for things I forgot about" to the first look, without asking for a bank first. That single sentence is the reason every block below exists.
/, self-canonical. No breadcrumbs: this is the root.Content blocks
Composition from the block bank, type A, the rows marked TAKE. Ten blocks; the trace of each one lives in its bank row.
| # | Block | Carries | From the bank |
|---|---|---|---|
| 1 | Header: wordmark, How it works, Trust and security, Pricing, Sign in, Get started free | GC1, marketing variant | TAKE, all seven sources; ours makes "See how it works" the loud action, not "Sign up" |
| 2 | Hero: H1, one-sentence promise, primary CTA, secondary CTA, and the line "No bank connection needed to start. Read-only, we can never move your money." | J-MAIN, J1, J5 | TAKE plus TAKE, DIFFERENTLY: the reassurance line says the harder thing |
| 3 | Product preview: the calm list with real merchant names and one total, labelled "Example, not your data" | growth zone 2, H0 | TAKE, DIFFERENTLY: Vivid shows a chart, we show the actual list |
| 4 | Benefits, one differentiator each: everything in one place, clear never judged, never caught off guard | J-MAIN, J3, J4 | the on-screen realization of the three H2 differentiators |
| 5 | How Tendd works: three numbered steps, the length of the path stated up front | Phase 3 barrier, the 3-tap activation node | TAKE: Visitors' "set up in minutes" |
| 6 | Two paths: connect a bank read-only, or add it yourself from 400+ services | D1, D2, J5, growth zone 1 | TAKE, DIFFERENTLY: the category hides one of the two doors, we show both as equals |
| 7 | Trust and security: what we can see, what we can never do, read-only, delete any time | J1, J5, E3, GC6 | TAKE: ReSubs states a badge, we state the facts |
| 8 | Plan line, and the three ways to pay for Pro as columns: the whole calm view is free, Pro is depth | D3, D4 | TAKE, DIFFERENTLY: one honest line, not a comparison table |
| 9 | FAQ, four objections, the same ones the category proves people arrive with | J1, J5, SEO block D | TAKE |
| 10 | Closing CTA, the same single action, and the marketing footer with privacy first | J-MAIN, SEO block E | TAKE |
Named out loud and not added: press logos, a savings counter, user statistics, testimonials, store ratings, a comparison table against a named competitor. Each is a SKIP row in the bank with its reason. The testimonial block currently on the grey screen (welcome / social-proof in the microcopy inventory) is one of them: authored copy with no real quote behind it yet, scoped LATER. That is a change to the grey screen and belongs to the wireframe rebuild, not to a hand edit here.
States, filters, the one action
| State | Reads like | Trigger |
|---|---|---|
| default (guest) | The page as specified | Anyone not signed in |
| returning, signed in | The header swaps "Get started free" for "Go to your subscriptions" | A live session |
| JavaScript off, crawler | Everything above is server-rendered text; the preview is a real image with alt text | Crawlers, no-JS |
No empty, loading or error state: the page holds no live data by design, which is also what makes it fast and indexable. Filters and facets: none, this is not a listing page.
Primary CTA: "Get started free", to node 1.2 Activation Path Choice. It appears in the header, the hero and the closing block, and it is the same action all three times. The secondary is "See how it works", an in-page jump to block 5, never a second competing destination.
Responsive. Mobile stack: the ten blocks in the order above, one column, the hero preview at the width of the screen. Desktop delta: blocks 2 and 3 become two columns (promise left, preview right), the benefits become a three-up row, the two paths sit side by side, the FAQ becomes two columns. No block is added or removed by breakpoint.
Emotional support
One mechanism from the table of emotional and social jobs (base layer) lives on this node.
| Job | Mechanism | Where exactly on this page |
|---|---|---|
| E1 feel competent, not judged | Money is framed as "what you signed up for", never as spending or waste; no score, no red, no advice | The hero promise (block 2), the preview caption "a month, for what you have signed up for" (block 3), and the benefit card "Clear, never judged" (block 4) |
E3 is prepared here by the trust block and completed at node 1.3, where the read-only sentence is said in the same breath as the bank request. S1 does not appear on this node.
SEO block A-E
A. Meta tags, ready copy
title (49 chars): Tendd - See and control your subscriptions, calmly
description (147 chars): See every subscription and recurring charge in one calm view. No bank connection needed to start. Built for people who find money apps stressful.
canonical: self, the root URL. hreflang: none, one language by project boundary. robots: index, follow
- OG and Twitter: title and description as above; the OG image is the calm-list preview with the "Example, not your data" label baked in, so a shared link never implies real data
title (49 chars): Tendd - See and control your subscriptions, calmlydescription (147 chars): See every subscription and recurring charge in one calm view. No bank connection needed to start. Built for people who find money apps stressful.canonical: self, the root URL. hreflang: none, one language by project boundary. robots: index, followB. Heading structure
- H1: See what you're paying for. Calmly.
- H2: Calm control of your recurring money (block 4)
- H2: How Tendd works (block 5)
- H2: Two ways to start (block 6)
- H2: Trusted with your money (block 7)
- H2: Simple, honest pricing (block 8)
- H2: Questions people ask first (block 9)
Correction, 2026-08-04. seo.md still writes the H1 as "See what you are paying for. Calmly.". Voice locked the contracted form, and the on-screen H1 is the contracted one. The SEO H1 and the on-screen H1 are one string; the node owns it from here.
C. SEO text, ready
The indexed body text is the on-screen copy: already written, already in voice, already in the microcopy inventory under welcome. This node does not author a second edition of it. What it fixes is what information must be present for search, and it is present:
- the category term ("subscriptions", "recurring charge") in the H1 area and the hero
- the differentiator terms ("calm", "no bank connection needed to start") in the hero and block 7, as real text and not inside an image
- the privacy angle ("read-only", "we can never move your money") in the hero and block 7
- the manual path ("add your subscriptions by hand from 400+ services") in blocks 5 and 6, which is the "track subscriptions without linking bank" cluster
- the four FAQ questions in block 9, which are the long-tail informational cluster
D. Structured data
Organization (name, logo, social profiles when they exist) and WebSite. FAQPage on block 9, which is now legitimate because the questions and answers are real on-page text. No Product or Offer schema: the plan line is one honest sentence, not a pricing page.
E. Optimization checklist
- exactly one H1, H2s in block order, no heading used for styling
- LCP is the hero preview image: sized, compressed, not lazy, space reserved so CLS stays low
- every navigation and CTA is a crawlable
<a href>, never a button that only listens to JS - self-canonical, no hreflang, index-follow here and noindex on every node from 1.2 on
- all differentiator copy is real text, never text baked into an image
- INP: the FAQ accordion is the only interactive block above the fold on mobile
Locked, carried, open
Locked here: the ten-block composition and its order, the single primary action repeated three times, the H1 in its contracted form, and the FAQPage schema on block 9.
Done at the wireframe rebuild, 2026-08-05: the testimonial block is dropped and three blocks the July screen did not have are on it: the two paths (block 6), the plan line (block 8) and the FAQ (block 9). The ten blocks are now all present and in order. The two-paths block carries no button of its own, because the single action of this page appears in the header, the hero and the closing block and nowhere else.
Still ?: real search volumes and Core Web Vitals targets, both operational, both already marked in seo.md.
Grey screen: wireframes/index.html. Coloured screen: design/home.html is node 2.6; this node has no coloured screen yet.