Who it's for
The ICP is a community fitness organiser in an Indian metro that runs recurring paid events and has a website it wants to grow, such as the three pilots: Find Your Fit, Sisters in Sweat and Cubbon Classic 10K.
| Attribute | ICP (thresholds to validate in the pilot) |
|---|---|
| Type | Run clubs, women's fitness collectives, strength and HIIT communities, and community races such as a 10K |
| Events | Recurring series (weekly runs, classes) plus flagship events each quarter |
| Website | Wix, Framer, Webflow, WordPress or Squarespace; no in-house developer |
| Today | Lists on peakst8 and links out from Instagram bio and site |
| Wants | Search and AI traffic on their own domain, their brand at checkout, ad attribution |
| Decider · user | Founder or community lead decides; an ops lead or volunteer sets it up; members book |
Not for V1: direct integrations with timing hardware (V1 assigns bibs and exports runners to the timing partner instead), and organisers without a website.
The problem
- Traffic leaks. Linking out sends every searcher to another domain, so the club builds no search equity of its own.
- Iframe embeds are invisible. Tools like KonfHub's embed drop an iframe; Google credits the vendor, and AI crawlers, which mostly don't run JavaScript, see nothing.
- No attribution. Clubs can't fire their Meta pixel or GA4 on a booking, so they can't tell which posts and ads sell.
Case study: Cubbon Classic 10K today
Cubbon Classic 10K sells Edition 2 (21 March 2027, Kanteerava Stadium, Gate A) through a KonfHub iframe on its own register page, which is exactly the setup Embed replaces.
| Today on cubbonclassic10k.com/register | With peakst8 Embedded Ticketing |
|---|---|
| Individual entry is a KonfHub widget iframe inside the page | A server-rendered race page on their domain; peakst8 checkout opens only on Book |
| Structured data is an Organization and a WebPage only, with no Event markup, so date, venue and price aren't machine-readable | Event, FAQPage and BreadcrumbList schema, sitemap and IndexNow, so the race can be ranked and quoted |
| Clubs: the captain submits a form, the code arrives 24–48 hours later, members register separately; minimum 10 runners, 7 men + 3 women | Club codes in V1: the captain registers (C1), the code is issued on approval in O7, members join with it (C3), and the captain tracks the roster against the rule (C2) |
| Timed entry with chip timing and bibs | Bibs assigned on payment from set ranges, frozen 7 days before the race, and exported as CSV to the timing partner (O7) |
| Fee not announced yet | Go-live 14 Dec 2026 leaves about three months of sales before race day |
How peakst8 helps them launch, grow and scale
peakst8 switches Embed on. The club picks a mode and points events.club.in at peakst8 or pastes one snippet. Platform guides and an install checker cover the rest.
Every event ships with schema, an FAQ, a sitemap entry and an IndexNow ping. GA4 and Meta events and UTMs show which posts and ads sell.
Signal: share of bookings from organic and AI referralsSeries and membership passes, multi-city listings and repeat-booking nudges. peakst8 absorbs payments, refunds and check-in as volume grows.
Signal: GMV per club, repeat booking rateSEO and AEO requirements
Every event must exist as fast, server-rendered HTML on the club's domain, marked up so Google and AI answer engines can read, rank and quote it.
| Requirement | What we build | Why |
|---|---|---|
| Server-rendered pages | One page per event at events.club.in/<event>; JS loader only for blocks on the main site | AI crawlers rarely run JS; Google indexes HTML first |
| Structured data | schema.org Event (date, location, offers, availability, organizer = club, eventStatus), Organization, BreadcrumbList, FAQPage | Event rich results; clean facts for answer engines |
| Answer-first copy | Opening lines state what, when, where, price and who it's for; FAQ per event (route, pace groups, parking, refunds) | What AI Overviews, ChatGPT and Perplexity quote |
| Freshness | Auto sitemap, IndexNow ping on publish or change; sold-out, moved and past events update eventStatus | Stale events hurt trust and rankings |
| Crawler access | robots.txt allows Googlebot, GPTBot, PerplexityBot, Google-Extended; per-club llms.txt listing upcoming events | Lets answer engines find and cite the club |
| Performance | LCP under 2.5 s on mobile, loader under 15 KB, checkout loaded only on Book | Core Web Vitals are a ranking input |
| Canonical | The club page is canonical; the peakst8 listing links to it | One URL gets the credit (see open questions) |
Change from the first draft: server-rendered hosted pages move from V2 into V1. A JS-only embed doesn't meet the AEO bar.
How it works
- Checkout opens as a sheet over the club's page and sends
ps:checkout_started,ps:payment_successand other events to it, which the page pushes todataLayer. - Payments: the same Razorpay Checkout peakst8 uses today. On mobile, if UPI or 3-D Secure can't finish inside the frame, Razorpay opens top-level and returns to the club's page.
- Sign-in: email OTP or Google, as on peakst8 today, inside the frame.
- Security: checkout can only be framed by the club's verified domains; webhooks are HMAC-signed.
V1 scope
See every screen: the clickable prototype has A1, O1–O7, E1–E6 and C1–C3, with their states and build notes.
| Surface | Screens |
|---|---|
| peakst8 admin | A1 Embed access: on/off, allowed modes, domains, fee override |
| Organiser dashboard | O1 Embeds home (views, orders, GMV) · O2 Choose mode · O3 Scope (event, series, all) · O4 Brand (colour, font, layout) · O5 Domain and tracking (subdomain, GA4, pixel, webhook) · O6 Install and SEO check (schema valid, indexed, sitemap submitted) |
| Attendee | The live peakst8 registration flow, re-skinned in the club's brand: E1 Event page or listing · E2 Choose Pass · E3 Your Details · E4 Waiver & Discounts · E5 Email OTP and Razorpay · E6 Ticket |
| Race features (Cubbon pilot) | A1 race toggles · O7 Clubs and bibs (club rules, approvals, codes, bib ranges, freeze date, timing export) · C1 Captain registers club · C2 Club code and roster · C3 Member joins with code, ticket with bib |
| Backend | organiser_embed_settings (enabled, modes, domains, fee override, tracking IDs, webhook) · embeds (mode, scope, theme, status) · orders gain source, embed_id, utm · clubs (code, captain, rules, status) · club_members · bibs (range, number, order, frozen) |
Metrics: share of pilot GMV through Embed, Book-to-paid conversion on mobile, organic and AI-referred bookings, and time from switch-on to first order.
Timeline to go live
Proposed: scope locks on 30 Oct, the build finishes on 20 Nov, and Find Your Fit goes live on 30 Nov 2026. Sisters in Sweat and Cubbon Classic 10K follow a week apart, with a go/no-go on 15 Jan 2027.
| When | Milestone | Passes when |
|---|---|---|
| 22–30 Oct | Scope lock | Prototype signed off (checkout matched to the live peakst8 flow on 27 Oct); Razorpay confirms Checkout inside a frame and the mobile UPI hand-off |
| 2–20 Nov | Build | Page renderer and schema, checkout sheet, dashboard O1–O7, admin A1, club codes and bib export built; SEO check 8 of 8 on staging |
| 23–27 Nov | QA and staging | Find Your Fit's pages and checkout tested end to end on staging |
| 30 Nov | Find Your Fit live | First real order through Embed |
| 7 Dec | Sisters in Sweat live | At least one order through Embed |
| 14 Dec | Cubbon Classic 10K live | Race page live and indexed; a test club completes C1–C3; timing partner accepts a sample export |
| 15 Jan 2027 | Go / no-go for all organisers | Embed share of pilot GMV, mobile Book-to-paid conversion, organic and AI-referred bookings reviewed |
After the pilot: V1.1 adds platform guides and analytics; V2 adds a WordPress plugin, memberships and multi-city listings.
FAQ
- What is peakst8 Embedded Ticketing?
- It puts a club's events and the full peakst8 booking flow on the club's own website. Event pages live on the club's domain; peakst8 runs tickets, payments, refunds and check-in.
- Does it help a club's SEO?
- Yes. Each event gets a server-rendered page on the club's domain with Event and FAQ schema, a sitemap entry and an IndexNow ping, so Google credits the club, not peakst8.
- Will ChatGPT, Perplexity or Google AI Overviews show a club's events?
- Pages are plain HTML that AI crawlers can read, open with date, place and price, carry an FAQ, and are listed in the club's llms.txt, which makes them easy to quote and cite.
- Who handles payments and refunds?
- peakst8. The club sees every order in its dashboard and gets it by webhook.
- How long does setup take?
- The target is under 10 minutes: switch-on, pick a mode, then point a subdomain or paste one snippet.
Open questions
- Canonical: if the club page is canonical, the peakst8 marketplace listing loses that search traffic. Is that acceptable?
- Pricing: same GMV % on Embed orders, or lower to win clubs that would otherwise self-host?
- Data: can clubs export attendee phone and email, and can peakst8 still market to them?
- Payments: does our gateway allow checkout inside a frame, and UPI intent from it?