← Workshop reference
Full research source research/07-jtbd-maps.md
Original Markdown

07 — Clean JTBD Maps: Competitors, SatuSatu & TipTip

Date: 2026-07-27
Status: Derived synthesis of Steps 00–06
Source boundary: Uses only evidence and conclusions already present in research/. No new market claims are introduced.
Purpose: Convert the value-chain and competitor research into explicit customer jobs without changing the investment ranking.


0. How to read this file

The source research says it uses JTBD opportunity gaps, but it does not contain a formal job map. This file supplies that missing layer.

Evidence labels

Label Meaning in this file
[OBSERVED] The job is directly visible in a live product, official workflow, API, contract surface or stated product promise already documented in the research.
[DERIVED] The job is inferred from several observed workflow requirements. The reasoning is shown.
[HYPOTHESIS] The job or its priority still needs primary interviews or internal behavioural data.

Job syntax

Every clean job statement follows the same structure:

When I am in a specific situation, help me make progress, so I can reach an outcome.

The job is deliberately solution-neutral. “Use an AI concierge,” “open a partner portal,” and “integrate an API” are solutions, not jobs.

Three boundaries inherited from the research

  1. TipTip and SatuSatu are mapped separately. TipTip's event-ticketing forecasting system is not treated as a SatuSatu capability. The only evidenced reuse is organisational know-how from shipping a production model.
  2. A B2B portal and a reseller API serve different jobs. D2 serves a person operating an account. D3 serves another system.
  3. Support and concierge are different jobs. Support resolves a question. The Pass concierge actively constructs and protects a feasible trip.

1. Master job architecture

flowchart LR
    T["Inbound traveller"] --> T1["Plan a feasible trip"]
    T --> T2["Find and choose activities"]
    T --> T3["Book with confidence"]
    T --> T4["Execute the trip safely"]
    T --> T5["Recover when reality changes"]

    A["Agent / DMC / hotel"] --> A1["Source sellable Bali inventory"]
    A --> A2["Build a client-ready quote"]
    A --> A3["Confirm and service the booking"]
    A --> A4["Protect margin and cash flow"]

    O["Activity operator"] --> O1["Turn an offline service into a sellable SKU"]
    O --> O2["Declare availability with low adoption burden"]
    O --> O3["Reach demand without losing control"]
    O --> O4["Get paid and reconciled correctly"]

    S["SatuSatu operations"] --> S1["Maintain one trustworthy catalog"]
    S --> S2["Maintain a confirmed booking state"]
    S --> S3["Scale service without removing human accountability"]
    S --> S4["Protect rate, refund, FX and settlement integrity"]

    P["TipTip promoter / creator"] --> P1["Monetise audience demand"]
    P --> P2["Sell access to events or content"]
    P --> P3["Forecast event-ticket sales"]

Reading: The competitors do not compete for one universal “travel booking job.” They are hired for different pieces of progress by different actors. SatuSatu's strategic question is which jobs it must own, which it can borrow from an incumbent rail, and which it should not attempt.


2. Traveller JTBD map

2.1 Clean job statements

ID Job statement Functional outcome Emotional / social outcome Hiring criteria Evidence
T1 — Orient When I am planning an unfamiliar Bali trip with limited time, help me understand what is realistically possible, so I can commit without feeling I missed the destination or built an impossible day. Feasible set of activities by place, duration, party and pace Confidence; reduced planning anxiety Local relevance, constraint awareness, speed [DERIVED] from the Pass promise, Klook Pass itinerary positioning and Viator/GYG planning surfaces
T2 — Discover When I know roughly what I want but not the exact product, help me find relevant options quickly, so I can avoid searching across many fragmented operators. High search success; relevant shortlist Sense of control; less cognitive load Breadth, retrieval quality, language, filters [OBSERVED] across Klook, GYG, Viator and SatuSatu catalog/search
T3 — Choose When several activities look interchangeable, help me judge quality, fit and trade-offs, so I can choose without fearing a tourist trap or a bad operator. Confident comparison and selection Trust; social proof Reviews, summaries, curation, transparent terms [OBSERVED] in incumbent review/ranking systems; [DERIVED] for SatuSatu's local-curation role
T4 — Commit When I am ready to buy, let me know the true price, availability, entitlement and cancellation terms before I pay, so I can book once and rely on the confirmation. Correct paid booking and confirmation state Relief; transaction trust Real availability, clear policy, instant or explicit confirmation SLA [OBSERVED] in APIs, certification checks, terms and Pool A/Pool B workflow
T5 — Compose value When I want several activities, help me assemble a good-value combination, so I can make one decision instead of buying every item separately. Bundle selection, activation and redemption Satisfaction from “unlocking” the destination Useful inclusions, discount credibility, flexible activation [OBSERVED] in Klook Bali Pass, Go City cohort and SatuSatu Bali All-Access Pass
T6 — Execute When the trip is underway, tell me exactly where and when to go from confirmed records, so I do not lose an activity to a coordination mistake. Correct meeting point, time, sequence and entitlement Safety; reassurance in a foreign destination Accurate records, timely messages, route feasibility [OBSERVED] in the Pass concierge promise and ops decomposition
T7 — Recover When weather, traffic, illness, ceremonies or operators disrupt the plan, help me recover while I am still in destination, so the rest of the trip is not lost. Re-plan, substitute, escalate and resolve Feeling cared for rather than abandoned Human judgement, local relationships, response speed [OBSERVED] in the concierge job decomposition; no scaled competitor proof found

2.2 Competitor coverage map

Legend: ● strong observed coverage · ◐ partial / indirect coverage · ○ no meaningful observed coverage · ? not established by the research.

Competitor / cohort T1 Orient T2 Discover T3 Choose T4 Commit T5 Compose value T6 Execute T7 Recover What it is actually hired for
Klook Broad shopping, a mature Bali Pass, localisation and emerging AI-assisted planning
GetYourGuide High-quality discovery, ranking, reviews and reliable marketplace booking
Viator / Tripadvisor Breadth, AI-assisted discovery/planning and a mature transaction surface
Go City / pass cohort One bundle decision, deferred redemption and destination value
Civitatis ? Curated-language trust rather than maximal catalog breadth
GlobalTix Transactional inventory and connectivity, not traveller guidance
SatuSatu today A locally managed Bali trip, with a human accountable for the difficult tail

2.3 The traveller-side competitive gap

The crowded jobs are T2 Discover, T3 Choose and T4 Commit. Klook, GYG and Viator operate at a scale SatuSatu cannot match with horizontal breadth or paid acquisition.

The less crowded combination is:

T1 Orient + T6 Execute + T7 Recover, delivered against direct local supply and packaged through T5.

That is SatuSatu's current D0 wedge. It is not “AI concierge.” It is a reliable, local, human-accountable trip outcome. AI may compress T1 and assist T6, but T7 is the reason the human promise exists.

2.4 Traveller-side design rules carried from the ops scan

Rule Why it follows from the job
Render day-of instructions from confirmed records; never generate them freely. T6 is hired for accuracy, not prose quality. A fluent wrong meeting point fails the job completely.
Keep a visible path to a human. T7 is exception recovery, not knowledge retrieval.
Do not use deflection as the main concierge KPI. The source decomposition puts ~80% of base-case time in assistable work and only ~8% in safely deflectable work.
Measure feasible itineraries and recovered trips, not chatbot conversations. The customer hires an outcome across a day or trip, not an answered message.

3. B2B buyer JTBD map

3.1 Clean job statements

ID Job statement Hiring criteria Incumbent answer SatuSatu implication Evidence
B1 — Consolidate supply When I serve many destinations and product types, help me source inventory inside as few workflows as possible, so my team avoids another login, contract, invoice and support relationship. Breadth, incumbent workflow, one account Traveloka, TBO, GlobalTix, Golden Rama SatuSatu cannot win the platform slot with 253 SKUs [DERIVED]; no primary agent study exists
B2 — Add differentiated Bali supply When my normal platform lacks a credible Bali experience, help me add a distinctive option at a sellable rate, so I can improve the itinerary without rebuilding my workflow. Unique SKU, real agent spread, reliable fulfilment No incumbent owns this position conclusively Pool B can win a line item, not the whole platform [HYPOTHESIS]; GATE 0 must verify exclusivity
B3 — Quote under constraints When a client gives me dates, party mix, budget and preferences, help me assemble a feasible quote quickly, so I can respond before the client shops elsewhere. Multi-pax rules, date range, geography, duration, margin, cancellation Viator's certification exposes the required primitives; no incumbent B2B AI surface is observed Strong future AI fit only after live partners and availability states exist [DERIVED] from Tier-A certification requirements
B4 — Know confirmation latency When I put an activity into a client quote, tell me whether it is instant or on-request and by when it will confirm, so I do not promise what I cannot deliver. Explicit state and SLA Mature APIs expose availability; Bali long-tail often does not availability_model and booking state come before D2/D3 [OBSERVED]
B5 — Protect economics When I resell an activity, show my rate, allowed markup, FX exposure and cancellation terms clearly, so I preserve margin and avoid a dispute. Net rate, floor, expiry, currency, refund logic B2B wholesalers and APIs encode these contractually Deterministic rate integrity beats an AI pricing feature [OBSERVED]
B6 — Service the exception When a booking changes or fails, give me one accountable support path and a truthful status, so I can protect my client relationship. Fast escalation, amendment/cancellation, confirmed record Large incumbents provide workflow and support depth Labour-assisted support is affordable; self-serve AI is not yet justified [DERIVED]
B7 — Settle simply When volume grows, let me pay and reconcile without creating working-capital surprises, so the channel remains worth operating. Prepay/deposit, clean statements, bounded credit, IDR compliance Incumbents win partly through consolidated finance workflows Launch prepay-first; do not lead with credit [DERIVED] from terms and cost model

3.2 B2B competitor archetypes

Archetype Companies in the research Jobs they win Jobs they leave open
Broad B2B wholesaler / workflow incumbent Traveloka TPN, TBO Holidays, GlobalTix B1, B4, B5, B7 Truly differentiated Bali-only supply (B2)
Local Indonesian rail Golden Rama, Panorama / Wupi B1, B6, B7; existing agent reach A complete ticketed-attraction catalog
Global marketplace API Viator, GetYourGuide B4, B5 and machine-scale transaction primitives Human handling of Bali long-tail request-to-book inventory
Supplier operating system rezio, Bókun, Prioticket / ETG, Ventrata Makes supply machine-readable before it reaches the buyer Does not create SatuSatu's differentiated demand position
SatuSatu's possible role Rate sheet, agent seat, selective wholesaler feed B2 and a narrow form of B3–B6 B1 at platform scale; broad credit; real-time API until availability changes

3.3 The B2B JTBD conclusion

An agent hires a platform for workflow consolidation and hires a supplier for a valuable line item.

SatuSatu should therefore test whether agents hire Pool B as a line item before asking them to hire SatuSatu as a platform.

This is why the lowest-effort sequence in 03-ops-scan.md is job-correct:

  1. Rate sheet / CSV + WhatsApp request-to-book.
  2. Agent seats on the existing storefront only after repeat demand.
  3. Selective placement inside an incumbent rail.
  4. A reseller API only after named partners already transact at material scale and a material share of Pool B is instant-confirmable.

4. Supplier / operator JTBD map

4.1 Clean job statements

ID Job statement Current alternative Competitor answer SatuSatu opportunity boundary Evidence
S1 — Become sellable When my activity exists as a brochure, social page or WhatsApp message, help me turn it into a complete, accurate listing, so buyers can understand and book it. Manual copy, spreadsheets, staff messages GYG GenAI wizard; Klook content/localisation; rezio product schema Buy AI extraction as an ops habit; keep verification human [OBSERVED]
S2 — Declare capacity simply When I do not use a booking system, let me state how my availability works without adopting new software, so I can receive demand I can actually fulfil. Phone/WhatsApp checks Booking systems ask the operator to adopt a system Use one of four declared models: allotment, freesale capped, static schedule, request-to-book [DERIVED] and approved roadmap prerequisite
S3 — Confirm in my workflow When a booking request arrives, let me confirm or decline through the channel I already use, so I do not miss revenue or create an oversell. WhatsApp, phone, memory rezio/Bókun portals and APIs Preserve WhatsApp; turn replies into state only at very high precision [OBSERVED]
S4 — Reach channels When I want more demand, distribute my product to useful channels without forcing me to maintain each one, so I can grow without becoming a channel manager. Manual reseller relationships rezio, Bókun, GlobalTix, ETG, Ventrata Partner or ride standards; do not build connectivity as a business [OBSERVED]
S5 — Keep control When resellers sell my activity, preserve my floor price, content rights, capacity rules and brand terms, so distribution does not destroy my business. Contract and manual policing Rate rules, parity terms, channel managers Contract first; nightly deterministic integrity checks [OBSERVED] / [DERIVED]
S6 — Get paid correctly When bookings flow through intermediaries, reconcile what was sold, cancelled and consumed, so I receive the correct settlement on time. Spreadsheet and message history Supplier systems and aggregator statements Instrument Pool B records before scaling volume [DERIVED]

4.2 What supplier competitors teach

Competitor Job lesson
GetYourGuide AI can compress structured listing production. It does not replace supplier verification, pricing or availability.
rezio / KKday The supplier system of record is more valuable than the SaaS fee because it owns first-party availability, price and order state.
Bókun / ETG / Ventrata Connectivity is a mature specialist layer. Standards and neutral rails reduce integration burden.
GlobalTix It can digitise the same long-tail operators SatuSatu calls exclusive. It is both an enabling rail and the clock on exclusivity.
SatuSatu Its best supplier proposition is low adoption burden plus local demand and a direct relationship—not another complex dashboard.

5. SatuSatu direction-specific JTBD map

5.1 D0 — Curated Pass + concierge

When I want a high-confidence Bali experience without becoming my own trip operator, help me choose, compose and execute the trip with a real local accountable for the difficult moments, so I can enjoy the destination without planning anxiety.

Element Definition
Primary actor Inbound international traveller
Core jobs T1, T5, T6, T7
Functional promise Feasible plan, useful bundle, accurate coordination, recovery
Emotional promise “Someone competent has my back”
Main competitors Klook Bali Pass, Go City cohort, hotel/villa concierge, driver referrals
SatuSatu advantage Human local accountability plus direct Pool B relationships
Risk Automating the human promise into a generic support bot
Correct success metrics Pass utilisation, itinerary approval time, coordination-error rate, recovery time, repeat/referral

5.2 D1 — Horizontal self-serve marketplace

When I want to find and book an activity myself, help me retrieve a relevant, trustworthy option from a broad catalog, so I can complete the purchase without searching many sites or messaging many operators.

Element Definition
Primary actor Self-directed traveller
Core jobs T2, T3, T4
Main competitors Klook, GetYourGuide, Viator, Traveloka, Tiket.com
SatuSatu role Coverage utility plus selected local depth
Pool A role Breadth and instant-confirm coverage
Pool B role Differentiation, subject to availability truth
Risk Scaling low-margin catalog cost while competing with incumbent CAC and ranking systems
Correct success metrics Search-success rate, zero-result rate, bookable-result rate, contribution after fulfilment

5.3 D2 — B2B account / partner booking

When I am serving a client and need a Bali activity, let me see my rate, confirmation latency and terms and place a request through a controlled account, so I can earn margin without losing control of the client promise.

Element Definition
Primary actor Agent, DMC, hotel, villa, corporate travel desk
Core jobs B2, B3, B4, B5, B6, B7
Main competitors Traveloka TPN, GlobalTix, TBO, Golden Rama, Panorama/Wupi
SatuSatu role Pool B line-item supplier; possibly a lightweight agent seat
Minimum proof Repeat agent demand by rate sheet before a portal build
Risk Mistaking another login for value; launching credit before contribution supports it
Correct success metrics Repeat transacting agents, Pool B bookings/agent, retained contribution, confirmation SLA

5.4 D3 — B2B reseller / system integration

When my own system already sells travel inventory, expose products, prices, availability and booking state in a stable machine interface, so I can resell without manual re-entry or bespoke support.

Element Definition
Primary actor Wholesaler, OTA, channel manager or large reseller engineering team
Core jobs Machine-scale B3–B7
Main competitors / standards Viator API, GYG Partner API, GlobalTix, ETG/Prioticket, Bókun, OCTO
SatuSatu role today A request-to-book feed at best
Minimum proof Named partners already transacting ≥480 Pool B bookings/year and a material instant-confirm share
Risk Building an API that adds latency to a workflow whose problem is latency
Correct success metrics Live transacting integrations, bookings/integration, integration-support eng-weeks, retained contribution

6. TipTip JTBD map — descriptive context only

⚠️ Scope warning: The source plan explicitly excludes TipTip ticketing, creators and sponsorship from the SatuSatu opportunity register. This map describes the group context; it does not add TipTip recommendations.

6.1 Evidence-constrained jobs

Actor Clean job statement Evidence status What is known What remains unknown
Creator When I have knowledge, content or a community, help me sell my work and interact directly with fans, so I can monetise without needing a very large audience. [OBSERVED], Tier B/C in the grounding sources TipTip is described as a creator monetisation and direct fan-interaction platform Current creator product mix, economics and active workflows were not part of this research
Promoter / event business When I am selling a date-fixed event, help me distribute tickets and monitor demand, so I can fill the event and operate it profitably. [OBSERVED] at product-category level Entertainment ticketing is the reported growth engine; organic promoters generated >50% of transactions by end-2025 in a Tier-B report Promoter workflow, fee model, inventory controls and operational pain were not inspected
Promoter / commercial operator When presales are forming, help me forecast final ticket sales early enough to adjust commercial decisions, so I can protect contribution margin. [OBSERVED] system name; outcome claim is [ANNOUNCED] and correlational Internal answer names “AI Event Business Sales Forecasting”; contribution margin rose 50% after the AI deployment Inputs, accuracy, decision rights, causal contribution and model ownership
Fan / attendee When I want access to a creator or event, let me discover and purchase the relevant ticket or work, so I can participate without friction. [OBSERVED] at app/category level A live event/concert ticket app and direct fan interaction are documented Discovery, loyalty, post-purchase and support jobs were not inspected

6.2 What can and cannot transfer to SatuSatu

Asset / job capability Transfer call Reason
Event sales forecasting model Do not transfer by assumption Date-fixed presales and evergreen daily-departure travel SKUs are different forecasting problems
Production AI team and operating discipline Potentially reusable The group has shipped evaluation, monitoring and retraining practices at least once
Payment rails Unknown The research never confirmed whether SatuSatu shares TipTip's gateway, FX or settlement stack
Ticketing transaction primitives Partially reusable, unverified Confirmation and redemption concepts may transfer; supplier availability and travel fulfilment do not
Audience cross-sell Do not assume TipTip's domestic creator/ticketing audience and SatuSatu's inbound international traveller may be close to disjoint

6.3 The group-level job that is actually reusable

When SatuSatu needs to ship a bounded production capability, reuse the people, controls and learning loop from TipTip's prior deployment, so SatuSatu avoids relearning production AI operations from zero.

This is an organisational job, not a model-transfer claim.


7. Jobs that must not be conflated

Do not conflate Why the distinction changes the decision
Discovery vs itinerary construction Search returns products; itinerary work satisfies time, geography, party and sequencing constraints.
Support vs concierge Support answers a question; concierge actively plans and recovers a trip.
Catalog breadth vs differentiated supply Pool A improves search coverage; Pool B is the only possible margin and exclusivity asset.
Partner portal vs reseller API D2 serves a person; D3 serves software and carries certification and maintenance burden.
Request-to-book vs instant confirmation The former requires an SLA and human/operator loop; the latter supports machine-scale resale.
Supplier operating system vs marketplace rezio/Bókun/ETG own workflow and data; Klook/GYG/Viator own demand.
Pass/bundle vs supply provenance A Pass is packaging over inventory; it is not a third source of supply alongside aggregator and direct contracts.
AI assist vs deterministic control Many highest-value jobs—rate integrity, refund rendering, booking chase—need rules and state, not a model.

8. Opportunity gaps stated as jobs, not features

Priority Unmet / under-served job Why it matters Cheapest valid test
1 SatuSatu needs to know whether Pool B is genuinely exclusive before offering it as differentiated B2B supply. It gates 17 of 24 opportunity rows and the D2/D3 thesis One-day cross-check against GlobalTix and Klook
2 A Pool B booking must reach a truthful confirmation state without asking the operator to adopt new software. It gates D0 coordination, D1 sellability, D2 quoting and any D3 future Classify every SKU into one of four availability models
3 An agent needs to prove demand for Pool B before SatuSatu builds another workflow. It distinguishes a valuable line item from an unwanted portal Rate sheet + WhatsApp to 20–40 named agents
4 A traveller needs a feasible plan and safe recovery, not merely more search results. This is the defensible D0 job combination Measure concierge workload, capacity constraint and recovery outcomes
5 SatuSatu needs reliable catalog and commercial state before it adds model intelligence. Wrong sold counts, rates, refunds and availability defeat every higher-level job Deterministic instrumentation and integrity checks

9. Research actions required to validate the maps

Validation Jobs affected Decision moved
10–15 Indonesian agent interviews B1–B7 Whether Pool B uniqueness matters enough to earn a line item; whether D2 is needed
Count real monthly bookings and Pass usage T1–T7, all internal jobs Whether any current-basis automation clears materiality
Measure concierge minutes by task class T1, T6, T7 Capacity case vs cost-saving case
Cross-check Pool B self-listing B2, S4, D2, D3 GATE 0 pass/fail
Capture booking confirmation latency by availability model T4, T6, B3, B4, S2, S3 Which inventory can safely appear in each surface
Confirm TipTip shared rails and team availability Group-level reuse job What can be borrowed without displacing D2/D3 platform work

10. Source map

This synthesis is derived from:


11. The five-line JTBD conclusion

  1. SatuSatu should own the traveller jobs that require local accountability, not imitate incumbent breadth.
  2. Pool B competes for a line item inside an agent's workflow, not for the agent's platform login.
  3. The operator job is low-burden digitisation: declare availability and confirm through familiar channels.
  4. D0–D3 are different channel jobs; Pool A/B are different supply sources; the Pass is packaging.
  5. TipTip contributes production experience and possibly rails—not a travel-ready forecasting model.