Web embed
Put a live, talking avatar on any web page with one iframe.
One URL in an <iframe>: no npm package, no install and no secret in the browser.
Before you start
The embed URL is https://www.bithuman.ai/embed/<CODE>, and the avatar listens and answers. render=auto: web render by default; devices that can’t web-render use cloud render automatically. render=cloud forces cloud. render=local requests rendering in the visitor’s tab only, after a device check.
- A current browser. In-tab rendering needs a supported graphics path and a passing device check.
- An agent code:
A23WJF0199(thewise-pupsample avatar) or your own (create your own avatar). - For a private agent, an embed token minted by your server.
Authenticate
A public agent needs no credential. For a private agent, your server mints an embed token with your API secret and passes it to the page. Sessions on your own agent bill your account per second, voice and AI included (pricing).
Run your first avatar
<!doctype html>
<html>
<body style="margin:0">
<iframe src="https://www.bithuman.ai/embed/A23WJF0199?render=auto"
allow="microphone *" style="width:100%;height:100vh;border:0"></iframe>
</body>
</html>
Expected: the avatar’s picture with Tap to talk. Select it, allow the microphone, and the avatar greets you and answers when you speak. Keep the * in allow, or the microphone is blocked. To try it without a page, open https://www.bithuman.ai/embed/A23WJF0199.
The wise-pup sample ends each session after 1 minute. For your site, embed your own agent (create your own avatar); by default its visitors can talk for as long as they like; you can set a per-session and a daily limit (visitor limits, in the Console).
Capture details
Captured on Chrome 154 on Linux · the web embed · sofia-ramirez (Essence 2) · 2026-09-27. The visitor's question is the microphone input, mixed into the recording.Performance
Measured in the tab with WebGPU, in Chrome on an Apple M4.
| Configuration | Essence 2 | Expression 2 |
|---|---|---|
| Chrome on Apple M5 Web browser (WebGPU) | 4.0× real timeChrome on Apple M5 · web viewer dcba335 · measured 2026-10-08 | 2.4× real timeChrome on Apple M5 · web viewer dcba335 · measured 2026-10-08 |
Times real time: seconds of avatar video rendered per second. At 1.0× or more, an avatar holds a live conversation. Select a figure for its release and date. All configurations and how we measure.
This section moved: docs.bithuman.ai/platforms/web#run-your-first-avatar
This section moved: docs.bithuman.ai/platforms/web/webgpu
This section moved: docs.bithuman.ai/platforms/web/app#integrate-into-your-app
This section moved: docs.bithuman.ai/platforms/web/app#react-and-other-frameworks
This section moved: docs.bithuman.ai/platforms/web/app#complete-example
This section moved: docs.bithuman.ai/platforms/web/app#requirements
This section moved: docs.bithuman.ai/platforms/web/app#get-the-code
This section moved: docs.bithuman.ai/platforms/web/app#run-it
This section moved: docs.bithuman.ai/platforms/web/app#expected-output
This section moved: docs.bithuman.ai/platforms/web/app#how-it-works
This section moved: docs.bithuman.ai/platforms/web/app#make-it-your-own
This section moved: docs.bithuman.ai/platforms/web/app#platform-notes
This section moved: docs.bithuman.ai/platforms/web/app#reference
This section moved: docs.bithuman.ai/platforms/web/troubleshooting
