Generate videosVisual EffectsLarge Language Models
Seedance 2.0 API Key Free: fal Access and GitHub Examples
fal hosts Seedance 2.0 as a paid endpoint, so where does free access come from? See the exact endpoint and parameters, working Python and JavaScript calls, a checklist for judging GitHub repos, per-clip cost math, and free PicassoIA routes for testing prompts before you spend a cent.
You searched for a free Seedance 2.0 API because you want ByteDance's video model running inside your own script, without a bill that surprises you at the end of the month. Reasonable goal. The honest answer comes in two halves. fal hosts a ready Seedance 2.0 endpoint, but it is metered, paid usage. The free routes sit elsewhere. Below you get the exact fal endpoint, every parameter it accepts, working Python and JavaScript calls, a checklist for judging GitHub examples, and a free path on PicassoIA you can use today.
💡 Short version: fal gives you the cleanest developer experience for Seedance 2.0, and PicassoIA gives you the cheapest place to test it. Find a prompt that works on the second, then spend on the first only when you need scripted volume.
Is a Free Seedance 2.0 API Real?
Short answer: not on fal, as far as the public pricing page shows. Seedance 2.0 produces video clips with built-in audio, and API hosts charge per generated second because every clip burns real GPU time. A host that gave away unlimited free access would go broke within a week.
What fal Actually Charges
fal exposes the model at the endpoint bytedance/seedance-2.0/text-to-video. Its pricing page lists paid model usage and, when I checked, advertised no free credits. Third-party comparisons put the rate near $0.24 per second for the basic tier and $0.30 per second for the high-quality tier. Treat those as reported figures and confirm them on the model page before you budget.
Here is what those reported rates mean per clip:
Clip length
Basic tier (about $0.24 per second)
High tier (about $0.30 per second)
5 seconds
about $1.21
about $1.51
10 seconds
about $2.42
about $3.02
15 seconds
about $3.63
about $4.54
Ten test clips at 10 seconds on the high tier land around $30. Prompt iteration is where the money disappears, so test cheaply first and spend only on the shot you plan to publish.
Spotting Fake Free Offers
Search results for this topic are full of pages promising "unlimited free credentials". Be skeptical. Three patterns show up again and again:
Shared tokens posted in public repos. They get revoked within hours, and using one can break the host's terms.
"Free" wrappers that resell cheaper models under the Seedance name. The output looks nothing like the real thing.
Sign-up funnels that ask for payment details before showing any price.
If a token is not tied to your own account, it is not yours to use.
fal Access in Ten Minutes
You need three things: an account, a token, and a client library. Nothing else.
Create the Account and Token
Sign up at fal.ai, open the dashboard, and generate an API token. Copy it once and store it in a password manager. Then set it as an environment variable so no script ever holds it in plain text:
The Python client reads FAL_KEY on its own. Never commit the value to Git, and never place it in browser code.
Your First Python Call
The request below uses the parameter names the endpoint publishes. subscribe submits the job, waits in the queue, and returns the result:
import fal_client
import requests
def on_update(update):
print(update)
result = fal_client.subscribe(
"bytedance/seedance-2.0/text-to-video",
arguments={
"prompt": "A potter shapes wet clay on a wheel, warm window light, slow push-in, soft sounds of wet clay",
"resolution": "720p",
"duration": "5",
"aspect_ratio": "16:9",
"generate_audio": True,
},
with_logs=True,
on_queue_update=on_update,
)
video_url = result["video"]["url"]
with open("clip.mp4", "wb") as f:
f.write(requests.get(video_url, timeout=120).content)
print("Seed:", result["seed"])
The response is a JSON object with a video file object (url, content_type, file_name, file_size) and the seed that produced it. Log the seed next to the prompt so you can trace which run made which file. The duration field is an enum, so copy the exact format shown in the schema on the model page.
The JavaScript Version
import { fal } from "@fal-ai/client";
const result = await fal.subscribe("bytedance/seedance-2.0/text-to-video", {
input: {
prompt: "A potter shapes wet clay on a wheel, warm window light, slow push-in",
resolution: "720p",
aspect_ratio: "16:9",
},
logs: true,
});
console.log(result.data.video.url);
Run this from a server route, never from the browser, or your token becomes public the moment the page loads.
Handling Errors and Timeouts
Video jobs often take a couple of minutes, so plan for failure from the start. Wrap each call in a try block, record the prompt and settings before submitting, and retry a failed job once after a pause rather than in a tight loop. For batches, submit jobs to the queue and collect results later instead of holding one open connection per clip. If a job fails twice with the same prompt, change the prompt before spending a third time: repeated failures usually point at the input, not at bad luck. Keep a small log file with the prompt, settings, seed, and file name, so you can match any clip to the run that made it.
GitHub Examples Worth Cloning
Search GitHub for Seedance 2.0 and you will find dozens of repos: quick scripts, Next.js demos, batch renderers, ComfyUI nodes. Quality varies a lot. I won't name specific repos, because they change weekly, but you can judge any of them in two minutes.
What a Good Repo Shows
The exact endpoint ID, matching the model page character for character.
Tokens read from environment variables, with a .env.example file and no real values.
Queue handling: submit, poll or use a webhook, then fetch. Blocking calls are fine for tests, but batch jobs need the queue.
Error handling for failed jobs and timeouts, plus retries with a pause.
A recent commit date. The model is new, and its schema has moved quickly.
Red Flags in Sample Code
Red flag
Why it hurts
Hard-coded token in the source
Instant leak, then instant revocation
Parameter names the endpoint does not list
Calls fail or silently fall back to defaults
No download step
Output lives on the host's storage, so relying on that URL forever is a gamble
Loop with no delay or concurrency cap
Rate limits and a surprise bill
Unpinned dependencies
Breaks on the next client release
💡 Before you run any cloned script, search it for http:// and requests.post and read every outbound address. Anything that is not the fal host or your own server deserves a question.
A Safe Way to Test Any Repo
Never run an unknown repo with your main token. Create a separate token used only for testing, run the script inside a throwaway folder or container, and set the shortest duration and lowest resolution the script allows. Read the first output before you scale up. If the repo loops over a list of prompts, cut the list to one entry and print the request payload instead of sending it. Once you know exactly what leaves your machine and what comes back, raise the settings step by step. Ten minutes of caution costs less than one runaway batch.
Settings That Change the Result
The endpoint exposes seven inputs. Most tutorials only show the prompt, but the other six decide both cost and quality.
Parameter
Options
Default
prompt
Free text, required
none
resolution
480p, 720p, 1080p, 4k
720p
duration
auto, or 4 to 15 seconds
auto
aspect_ratio
auto, 21:9, 16:9, 4:3, 1:1, 3:4, 9:16
auto
generate_audio
true or false
true
bitrate_mode
standard, high
standard
codec
auto, H264, H265
auto
Duration and Resolution
Longer clips and higher resolutions both raise the price. Draft at 720p and 5 seconds. Move to 1080p only for the take you plan to publish, and keep 4k for hero shots that justify the cost.
Audio, Ratio and Codec
Leave generate_audio on unless you plan to score the clip yourself, since synchronized sound is a large part of the model's appeal. Use 9:16 for Shorts and Reels, and 16:9 for YouTube and web banners. Pick H264 for the widest playback support, and H265 when file size matters more than old devices.
Free Routes That Work Today
Seedance on PicassoIA
PicassoIA runs the Seedance family in the browser, with no code. Seedance 2.0 accepts text or a reference image and returns a clip with dialogue, sound effects, and music generated in one pass. It takes up to nine reference images, three reference videos, and three audio clips, and you can pin both the first and the last frame.
For cheaper drafts there are Seedance 2.0 Fast and Seedance 2.0 Mini. And Seedance 2.5 Lite is built for volume: it makes 5 or 10 second clips with audio at 480p or 720p, and Wonder members run it without limits.
The PicassoIA API Route
PicassoIA also runs a developer API with the same Replicate-style flow: create a prediction, poll it, fetch the result. The base URL is https://api.picassoia.com/v1, and requests carry a bearer token that starts with pia_sk_. Four models are exposed: image, image editor pro, video, and Seedance 2.5 Lite with synchronized audio.
The docs say "API predictions are currently free. They use no credits." The same page also says "Creating predictions needs an Infinite plan." Read both lines together: free per call, but gated by plan. Check your own account before you build on it. Limits to plan around: five predictions running at once per account and 4,000 characters per prompt.
curl -X POST https://api.picassoia.com/v1/models/picassoia/seedance-2.5-lite/predictions \
-H "Authorization: Bearer $PICASSOIA_TOKEN" \
-H "Content-Type: application/json" \
-d '{"input": {"prompt": "A potter shapes wet clay on a wheel, warm window light, slow push-in"}}'
The response carries a prediction ID. Poll GET /v1/predictions/{id} until the status reads succeeded, then download the video from the output URL.
Here is how the routes compare:
Route
Model
Cost
Best for
fal API
Seedance 2.0
Pay per second, reported near $0.24 to $0.30
Production scripts
PicassoIA web
Seedance 2.0, Fast, Mini
Listed as free to try online
Prompt testing
PicassoIA web
Seedance 2.5 Lite
Unlimited for Wonder members
Heavy iteration
PicassoIA API
Seedance 2.5 Lite
Documented as free, Infinite plan required
Scripts on a budget
Which Route Fits You
Pick by the job, not by the headline price. A solo creator posting three clips a week needs no API at all: the browser on PicassoIA is enough. A developer building a prototype benefits from the PicassoIA API while it stays free on the plan they hold, because failed experiments cost nothing. A team shipping a product feature with predictable billing should price the fal endpoint, since a paid host usually comes with clearer billing and support terms. Many projects use two routes: free for drafts, paid for finals.
How to Use Seedance 2.0 on PicassoIA
The workflow takes about five minutes the first time:
Write the prompt. One subject, one action, one camera move, one lighting note. Put spoken lines in double quotes so the model generates dialogue.
Set the duration. Use 5 seconds for drafts. A value of -1 lets the model pick the length from the prompt.
Choose resolution and ratio. The defaults are 720p and 16:9. Switch to 9:16 for vertical posts.
Add references if you have them. Upload up to nine images and call them [Image1], [Image2] in the prompt. A first-frame image animates a still, but it cannot be combined with reference images.
Generate and compare. Change one setting per run, so you know what caused the difference.
💡 Pin the first and last frame when a clip must open and close on exact images, such as a product reveal that ends on a logo card.
Draft Prompts With an LLM
Shot descriptions are easier to write with help. Claude Sonnet 5 and Gemini 3.5 Flash both run on PicassoIA. Paste a rough idea and ask for five variants in this order: subject, action, camera move, light, sound. Then run the best two through Seedance and keep the winner.
Prompts That Behave
These four prompts follow the order above. Copy them, then swap the subject:
Product:Overhead shot of a ceramic mug on a wooden table, steam rising, camera slowly descends, soft morning light, gentle clink of ceramic.
Dialogue:A chef tastes soup in a steamy kitchen and says "Needs more salt." Handheld camera, warm tungsten light, bubbling pots.
Visual effect:A glass of water on a table, the surface ripples as a small vortex forms in the center, then settles. Locked camera, macro lens, soft daylight.
Vertical social:Street musician plays violin at a rainy tram stop, camera orbits slowly, reflections on wet pavement, ambient rain and violin.
Three common mistakes waste credits:
Stacking actions. Five seconds fits one clear action, not a chase and a conversation.
Skipping the camera. Without a camera note, the model improvises, and the result changes every run.
Contradicting the light. "Golden sunset in a dark cave" gives muddy output. Pick one source.
Make Your First Clip Today
The practical path is simple. Test prompts for free on Seedance 2.5 Lite, polish the winner on Seedance 2.0, and move to the fal endpoint only when you need a script that renders hundreds of clips. That order keeps the bill small and the results predictable.
Open Picasso IA, paste one of the prompts above, and watch your first Seedance clip render. Then try the same idea as a still image and compare the two. Browse every video, image, and language model at picassoia.com/en/all-models and build your own workflow from there.