Skip to main content

Documentation Index

Fetch the complete documentation index at: https://docs.mavera.io/llms.txt

Use this file to discover all available pages before exploring further.

Overview

Pull data from Typeform (Form Responses, Open-Ended Answers, NPS Scores) → analyze with Mavera (Custom Personas, Focus Groups, Chat, Mave Agent) → discover audience segments from real survey data, extract themes from qualitative responses, test NPS-tiered messaging, and calibrate synthetic vs real research.
Typeform API — Base URL: https://api.typeform.com/. Auth: Bearer Token or OAuth 2.0. Rate limits: 2 req/sec (strict). Responses endpoint returns up to 1,000 items per page with cursor pagination.

Prerequisites

1

Typeform access token

Create a Personal Access Token with scopes: forms:read, responses:read.
2

Mavera API key

Get your key from Mavera dashboard.
3

Environment variables

export TYPEFORM_TOKEN="tfp_xxxxx"
export MAVERA_API_KEY="mvra_live_xxxxx"

Jobs

#JobTypeform DataMavera SurfaceOutput
1Survey Response → Persona DiscoveryForm responsesMave Agent + PersonasDiscovered audience segments
2Open-Ended Response → Focus Group QuestionsOpen-ended answersChat + Focus GroupsTheme-targeted focus groups
3NPS Response → Brand Voice ImpactNPS scores + qualitativeFocus GroupsNPS-tier messaging
4Typeform × Mavera A/B ResearchParallel survey dataFocus Groups + CompareCalibration data


Overall Calibration Score: 74/100

Theme Overlap

  • “Biggest challenge”: 82% overlap. Both identified tool sprawl, manual reporting, and team alignment. Real humans also mentioned “burnout” and “manager expectations” — more emotional/personal themes.
  • “Describe our product”: 68% overlap. Synthetics were more polished (“an integrated platform for…”). Real humans used informal language (“it’s like Notion but for marketing data”).

Sentiment Alignment

  • Positive sentiment: Strong match (89%)
  • Negative sentiment: Moderate match (61%). Real detractors are more visceral (“this thing crashes every Tuesday”). Synthetics are more measured and constructive.

Specificity Gap

  • Real responses include specific numbers (“took 3 weeks to onboard”, “$12K over budget”). Synthetics tend toward ranges and generalities.

Blind Spots

  1. Internal politics — Real: “My VP doesn’t believe in data”
  2. Personal frustration — Real: “I’m the only one who knows how to use it”
  3. Competitor-specific comparisons — Real: “Mixpanel does this better”

Recommendations

✅ Safe to delegate: Feature feedback, value prop testing, message ranking ⚠️ Use with caution: Pricing research, competitive positioning ❌ Needs real humans: Emotional/personal topics, internal politics, burnout

Per-Question Reliability

QuestionCalibration Score
Biggest challenge78/100
Describe product72/100
What nearly stopped you69/100
Onboarding rating81/100
Change one thing71/100

### Error Handling

<AccordionGroup>
  <Accordion title="Question matching between platforms">The code matches Typeform fields to shared questions by partial string comparison. If Typeform question wording differs slightly, adjust the matching threshold or use explicit field ID mapping.</Accordion>
  <Accordion title="Sample size imbalance">Real surveys may have 500+ responses while Focus Groups produce 5-15. The comparison accounts for this, but note that synthetic responses represent archetypes, not statistical distributions.</Accordion>
  <Accordion title="Calibration drift over time">Run this calibration quarterly. As your product and audience evolve, the accuracy of synthetic personas may change. Track calibration scores over time.</Accordion>
  <Accordion title="Typeform survey must exist first">This job assumes you've already deployed the Typeform survey with the shared questions. Create the Typeform first, collect responses, then run the comparison.</Accordion>
</AccordionGroup>

---

## Rate Limits & Production Notes

| Endpoint | Limit | Strategy |
|----------|-------|----------|
| Form structure | 2 req/sec | Cache form definition locally |
| Responses (paginated) | 2 req/sec | 600ms delay; max 1,000/page |
| All Typeform endpoints | 2 req/sec (shared) | Strict — throttle all calls |

<Warning>
Typeform's **2 req/sec** limit is the strictest among survey platforms. A form with 3,000 responses needs 3 paginated calls — budget 2+ seconds between each. Cache form definitions and responses locally for repeated analysis.
</Warning>

**Production checklist:**

- Store `TYPEFORM_TOKEN` and `MAVERA_API_KEY` in a secrets manager.
- Cache form definitions — they rarely change and each lookup costs a rate-limited request.
- For large surveys (5,000+ responses), download responses incrementally using the `since` parameter to avoid re-fetching all data.
- The calibration job (Job 4) requires a deployed Typeform survey with responses. Plan for 1-2 weeks of real data collection before running the comparison.
- Monitor Mavera credits at [Dashboard](https://app.mavera.io/settings/usage).

---

<CardGroup cols={3}>
  <Card title="All Integrations" icon="plug" href="/integrations" />
  <Card title="Typeform API" icon="square-check" href="https://www.typeform.com/developers/" />
  <Card title="Personas" icon="user" href="/features/personas" />
  <Card title="Focus Groups" icon="users" href="/features/focus-groups" />
  <Card title="Mave Agent" icon="brain" href="/features/mave-agent" />
  <Card title="Chat" icon="comments" href="/features/chat" />
</CardGroup>