Headless SDK

One pipeline, any UI you want.

Every tile below is a real feedback surface built on @usero/sdk/headless. Same submission pipeline, identity, and plugins as the drop-in widget, with zero UI of ours. Tap any of them, it submits to Usero for real.

Star rating

A classic 1–4 star bar. One tap submits.

const usero = useUseroFeedback({ clientId })
// on click:
usero.submit({ rating })

Emoji reactions

Map a reaction to a rating and tag it with metadata.

usero.submit({
  rating,
  metadata: { reaction: 'Love it' },
})

Thumbs up / down

The simplest binary signal for any surface.

usero.submit({
  rating: up ? 4 : 1,
  metadata: { vote: up ? 'up' : 'down' },
})

Inline comment

A rating-free text box. Just a comment, no stars.

usero.submit({ comment })

Slide-over panel

Rating plus comment in a panel that matches your design system.

usero.submit({ rating, comment })

NPS scale

A 0–10 scale bucketed down to a Usero rating.

How likely are you to recommend us?

Not likelyVery likely
usero.submit({
  rating: npsToRating(score),
  metadata: { nps: score },
})

Mood picker

Gradient chips that map a mood to a rating.

How was your experience today?

usero.submit({
  rating,
  metadata: { mood: 'Amazing' },
})

Satisfaction slider

A 0–100 slider bucketed into a Usero rating.

How satisfied are you?70
usero.submit({
  rating: satisfactionToRating(value),
  metadata: { satisfaction: value },
})

Category tags

Multi-select tags plus an optional note.

usero.submit({
  comment,
  metadata: { tags: ['Design', 'Bug'] },
})

Floating action button

A FAB that pops a quick reaction popover.

usero.submit({
  rating,
  metadata: { reaction, source: 'fab' },
})

Love button

A single tap delight signal, no form needed.

Tap if you love it
usero.submit({
  rating: 4,
  metadata: { reaction: 'love' },
})