API Free WeekHundreds of APIs are free to call this week.Browse free APIs

HeyGen Lipsync Precision

heygen/lipsync/precision

HeyGen v3 Lipsync (precision) replaces the speech in a video and re-syncs the speaker's lips to the new audio.

Base price
$0.50USD / run
Execution
async
Model type
video
Input fields
8
Production route

Try the model

Playground

Open playground
Input
Input audio URL.
Input video URL.
End time (seconds) for partial lipsync. Minimum: 0.
Start time (seconds) for partial lipsync. Minimum: 0.
Burn in captions.
Remove background music from the source video.
Allow the video length to follow the new audio.
Enhance the replacement audio.
OutputExample

Examples

Select an example to load its inputs and result into the playground.

Model card

Specifications

Pricing

Base price
$0.50 / run

Context & modalities

Input
Schema-defined
Output
video

Capabilities

Chat
Not supported
Vision
Not supported
Reasoning
Not supported
Structured output
Not supported
Function calling
Not supported
Audio input
Not supported

Access

Provider
HeyGen
Model ID
heygen/lipsync/precision
Execution
async
API
Unified Run API
Endpoint
/v1/run

API README

HeyGen Lipsync Precision

HeyGen v3 Lipsync (precision) replaces the speech in a video and re-syncs the speaker's lips to the new audio.

Parameters

FieldDescription
videoSource video (required)
audioReplacement audio (required)
enable_dynamic_durationFollow the new audio length (default true)
start_time / end_timePartial lipsync window

Pricing

ConfigurationPrice
Per second of output video$0.1

Output: one MP4 video URL.

Start building

Send your first request

OpenAI-compatible endpoint with unified authentication and usage tracking.

Production API
Unified Run API endpoint
https://api.sandbase.ai/v1/run
Model ID
heygen/lipsync/precision
# The quoted heredoc keeps Unicode and shell metacharacters unchanged.
result=$(curl --fail-with-body --silent \
  -X POST "https://api.sandbase.ai/v1/run" \
  -H "Authorization: Bearer $SANDBASE_API_KEY" \
  -H "Content-Type: application/json" \
  --data-binary @- <<'SANDBASE_JSON'
{
  "model": "heygen/lipsync/precision",
  "audio": "https://v3.fal.media/files/rabbit/Ql3ade3wEKlZXRQLRbhxm_tts.mp3",
  "video": "https://media.sandbase.ai/files/922d1013-9018-4956-a39d-d0859149ba76/0.mp4",
  "enable_caption": false,
  "disable_music_track": false,
  "enable_dynamic_duration": true,
  "enable_speech_enhancement": false
}
SANDBASE_JSON
)
run_id=$(printf '%s' "$result" | jq -r .id)
for attempt in $(seq 1 120); do
  status=$(printf '%s' "$result" | jq -r .status)
  case "$status" in completed|failed|timeout) break ;; esac
  sleep 2
  result=$(curl --fail-with-body --silent \
    -H "Authorization: Bearer $SANDBASE_API_KEY" \
    "https://api.sandbase.ai/v1/run/$run_id")
done
status=$(printf '%s' "$result" | jq -r .status)
[ "$status" = completed ] || { echo "Generation ended: $status" >&2; exit 1; }
printf '%s\n' "$result"

Choose your model

Compare models

All image & video models
ModelTypeDefault priceReleased
HeyGenVideo$0.50 / runApr 16, 2026
HeyGenVideo$0.50 / runMay 20, 2026
HeyGenVideo$1.02 / runApr 16, 2026
HeyGenVideo$0.25 / runApr 16, 2026
HeyGenVideo$0.50 / runFeb 23, 2026

Questions

FAQ

How do I call HeyGen Lipsync Precision through SandBase?

Create a SandBase API key, then send requests with the model ID "heygen/lipsync/precision" to Unified Run API (/v1/run) at https://api.sandbase.ai. The request examples on this page show the exact payload.

Do I need a separate HeyGen account?

No. One SandBase API key and balance gives you access to HeyGen Lipsync Precision and the other models in the catalog; you do not need to sign up with HeyGen separately.