Skip to main content
You need at least one LLM provider API key (e.g. OpenAI) and a video source API key (e.g. Pexels) before generating your first video. Both services offer free tiers.
1

Choose your deployment method

Pick the method that fits your environment. Docker is recommended because it bundles all dependencies automatically.

Docker

Recommended. No Python setup required.

Manual Python

Full control over the environment.

Google Colab

Try it instantly without any local setup. Open in Colab
2

Configure the application

Copy config.example.toml to config.toml in the project root, then fill in the minimum required values:
[app]
video_source = "pexels"
pexels_api_keys = ["your-pexels-api-key"]

llm_provider = "openai"
openai_api_key = "your-openai-api-key"
openai_model_name = "gpt-4o-mini"

subtitle_provider = "edge"
Get a free Pexels API key at pexels.com/api. Registration takes under a minute and the key is free for all use cases.
Configuration notes:
  • video_source — set to "pexels", "pixabay", or "local". Each source requires its own API key.
  • llm_provider — set to any supported provider (e.g. "openai", "deepseek", "gemini"). Add the matching *_api_key field.
  • subtitle_provider"edge" is faster and works without any additional downloads. Use "whisper" for higher accuracy (requires a ~3 GB model download).
  • Leave subtitle_provider empty to skip subtitle generation entirely.
Never commit config.toml to version control — it contains your API keys.
3

Start the application

Make sure Docker Desktop is installed, then run:
cd MoneyPrinterTurbo
docker-compose up
On newer Docker versions the command is docker compose up (without the hyphen).
Once started:The browser opens automatically after launch. If it shows a blank page, use Chrome or Edge.
4

Generate your first video

Open the Web UI at http://localhost:8501 and follow these steps:
  1. Enter a video topic in the “Video Subject” field, for example: benefits of morning exercise
  2. Select the video aspect ratio from the “Video Ratio” dropdown:
    • Portrait (9:16) — for TikTok, Instagram Reels, YouTube Shorts
    • Landscape (16:9) — for YouTube or standard video players
  3. Choose a voice from the “Speech Synthesis” dropdown. You can click Play Voice to preview before generating.
  4. Optionally adjust clip duration, number of videos to generate simultaneously, subtitle settings, and background music.
  5. Click the Generate Video button at the bottom of the page.
MoneyPrinterTurbo will generate the script, fetch matching footage, synthesize the voiceover, add subtitles, and assemble the final video. Progress is shown in the log panel.When generation completes, the video player appears on the page. You can also find the output MP4 file in storage/tasks/<task-id>/ within the project directory.
Generate 2–3 variants at once (set “Number of Videos Generated Simultaneously” to 2 or 3) and pick the one with the best footage matches.

Next steps

Docker installation

Full Docker setup guide with environment variables and troubleshooting

Manual installation

Python virtual environment setup, ImageMagick, and FFmpeg configuration

LLM providers

Configure OpenAI, Gemini, DeepSeek, Ollama, and other providers

Video sources

Set up Pexels, Pixabay, or use your own local footage

Build docs developers (and LLMs) love