Real-time avatar API, built in Japan

Text in, a talking avatar out.
A real-time avatar platform

Send text and avacast renders an avatar video on GPUs, with the voice and lip movement in sync, and streams it over WebRTC. Where and how it appears is up to you.

30 minutes a month free · Sign up with Google, GitHub or email

Text goes in, GPUs render video and voice, and the stream goes out to the web, apps and signageText goes in, GPUs render video and voice, and the stream goes out to the web, apps and signage

FEATURES

Features

What avacast returns is a stream of video and audio. The screen it appears on and what it says are both yours to decide.

  • 01

    Web, apps and signage

    Only video and audio arrive, so your layout and design stay as they are. Websites, smartphone apps and in-store signage all run on the same API.

  • 02

    GPUs provided by avacast

    avacast provides the GPUs that render the video and routes each session to one with room. On your side, your server just calls the API.

  • 03

    Only character and second counts are recorded

    No AI deciding the replies is included; avacast speaks the text you send as is. We record only the character and second counts needed for billing, not the utterance text.

USE CASES

Use cases

Combine it with a conversational AI and speech recognition to build a screen you can talk to and get answers from. All of these run on the same API.

LIVENice! So, what did you do last weekend?

English conversation practice

A partner to practise speaking English with

Speech recognition turns what the learner says into text, a conversational AI writes the reply, and avacast speaks it. Phrasing for each level and whether to point out mistakes are set in the instructions to the AI.

1 / 5: English conversation practice

ARCHITECTURE

Architecture

Your current chatbot or back-office system keeps deciding what to say. avacast turns the text it receives into video and voice and delivers it to the screen.

Your side

What writes the replies

  • Chatbot or LLM
  • Back-office system or FAQ
  • Speech recognition (for voice input)

Output: text to speak

avacast

Video and voice, rendered and streamed

  • Speech synthesis
  • Lip movement and video (GPU)
  • Streaming over WebRTC

Output: video and audio (WebRTC)

Your side

The screen it appears on

  • Website
  • Smartphone app
  • In-store signage

HOW IT WORKS

How it works

  1. 01

    Sign up and issue an API key

    Sign up with a Google or GitHub account or an email address, then issue an API key in the console.

  2. 02

    Create a session on your server

    Create a session from your server with the API key and you get a short-lived token for the browser. The API key stays on your server.

  3. 03

    Show the video in the browser

    Hand the token to the SDK and video and audio arrive over WebRTC. Then just send the text you want spoken.

server.shServer
curl -X POST https://api.avacast.jp/v1/sessions \
  -H "Authorization: Bearer $AVACAST_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"avatar_id": "YOUR_AVATAR_ID"}'
# pass client_token and webrtc to the browser
index.htmlBrowser
import { AvacastSession } from 'https://avacast.jp/sdk/v1.js';

const session = new AvacastSession(client_token, {
  signalingUrl: webrtc.signaling_url,
  iceServers: webrtc.ice_servers,
});
session.attach(document.getElementById('avatar'));
session.on('session.ready', () => session.speak('Thank you for reaching out.'));
await session.start();

Integrate with an AI agent

Add the MCP URL to Claude Code, Cursor, Codex and the like, log in with your dashboard account, and ask it to integrate avacast. No API key needed.

claude mcp add --transport http avacast https://api.avacast.jp/v1/mcp

Languages and frameworks

In the browser, the same SDK is called the same way from any framework. On the server you call the API over HTTP, so any language works.

Browser (SDK)

  • JavaScript
  • TypeScript
  • React
  • Vue
  • Next.js
  • Nuxt
  • Angular
  • Svelte

Server (HTTP API)

  • Node.js
  • Python
  • PHP
  • Laravel
  • Ruby on Rails
  • Go
  • Java
  • C#

PRICING

Pricing

Five plans, priced by monthly connected time. The free plan needs no card and gives you 30 minutes a month.

Free

¥0

  • 30 connected min / month included
  • 2 sessions concurrent
  • Up to 5 min per session
Start for free

Starter

¥1,980/mo

  • 200 connected min / month included
  • 5 sessions concurrent
  • Up to 15 min per session
Get started

StandardPopular

¥9,800/mo

  • 1,200 connected min / month included
  • 20 sessions concurrent
  • Up to 30 min per session
Get started

Business

¥49,800/mo

  • 6,000 connected min / month included
  • 40 sessions concurrent
  • Up to 60 min per session
Get started

Enterprise

On request

  • Connected minutes on request
  • Concurrent sessions on request
  • Session length on request
Talk to us

Prices exclude tax. Connected time is measured per second and summed monthly. Set a cap and you will never be billed beyond what you expect.

FAQ

FAQ

Can I try it on the free plan alone?
Yes. Sign up without a card and get 30 connected minutes a month free.
How are "connected minutes" counted?
We measure the time from opening a session to closing it, per second, and sum it monthly. How many sessions are open at once is not billed by itself.
What happens when I exceed the included minutes?
Only the excess is billed by usage and added to that month’s invoice. The rate differs by plan and is lower on higher plans.
Does it include response generation or speech recognition?
No. avacast’s job is to speak the text you send. Keep using whatever you already have for generating answers and recognizing speech.
Could a heavy month run up an unexpected bill?
No. You can set a monthly cap on connected minutes; once it is reached, no new sessions can be created and nothing more is billed.
Can you build a system on top of avacast for us?
Yes. SHANNON LIMITED LIABILITY COMPANY, the company behind avacast, designs and builds intake desks and reception systems that embed it.

30 minutes a month free

No card required to get started.