Organization Settings
Survey settings are organization-level and shared across every survey:- Sender display name — shown on invitations, at the verified BuildBetter survey domain.
- Reply-to address — where respondent replies go.
- Company context — optional context passed to AI follow-up generation, so clarifying questions sound like they came from your team.
The From domain is not configurable. Invitations send from the verified
surveys.buildbetter.ai sender; arbitrary unverified customer domains are deliberately unsupported. See Audience & Delivery.Feature Flag
AI Surveys requires the organization-levelsurveys feature flag. When it is off:
- Authenticated survey mutations are rejected.
- The survey worker defers pending invitations rather than sending them.
- Public token routes return Survey not found, after resolving the token’s organization.
What Costs Credits
One credit is $0.001. Four survey-specific meters bill at distinct points in the lifecycle:
A completed email survey response that generates two follow-ups and three signals therefore costs roughly 4 + 8 + 2 + 12 = 26 credits (~$0.026).
Response completion bills on all paths — including URL and in-app intercept flows that never sent an email.
What is never billed
- Preview test emails
- Preview recipients
- Test responses marked with the preview test flag
- Suppressed, no-op, or model-failed follow-up decisions
Allowance Enforcement
Credit checks happen before work is queued, not after:- Recipient upload and API recipient creation check invitation allowance before queuing email-capable recipients. If a batch exceeds available credits, you get an actionable partial-allowance result rather than a silently over-queued send.
- Activation surfaces an estimated maximum credit exposure, derived from queued recipients, expected completion rate, enabled follow-up depth, and average signals per response.
- The organization advisory lock that serializes allowance checks counts pending reservations that have not yet reached the usage ledger, so concurrent imports cannot over-reserve.
Running out mid-flight
Exhausting credits degrades gracefully rather than losing data:Idempotency
Billing events are idempotent through(model_id, rule_id) uniqueness. Replays may update the input value but never double-bill the same model and rule.
This holds in the awkward cases specifically:
- The provider accepts an email but the status update fails — the retry does not create duplicate invitation billing.
- The provider fails before acceptance — no invitation billing occurs, and the recipient stays retryable.
- Concurrent answer submissions share one generated follow-up prompt and one charge.
Send Limits
Independent of credits, throttles cap 1,000 invitations per hour per organization and 500 per hour per survey. See Audience & Delivery.Next
AI Surveys Overview
How the whole feature fits together.
Subscription Plans
Plans and credit allowances.