How I Automated 9 YouTube Channels at ₹0/month
I run 9 YouTube channels that post daily. I don't touch any of them. Total cost: ₹0.
The Architecture
Topic CSV → AI Script (Gemini/Ollama) → Google TTS → MoviePy Video → YouTube Upload
All scheduled via Mac LaunchAgents. Each channel has its own plist file that triggers at a specific time.
The 9 Channels
| Channel | Niche | Time |
|---|---|---|
| Gyaan in 5 | Knowledge | 6:15 PM |
| Tech in 5 Hindi | Tech | 11:30 AM |
| Money in 5 | Finance | 9:30 AM |
| Superhuman 60s | Productivity | 2:30 PM |
| Horror Ki Kahani | Horror | 9:30 PM |
| Pyaar Ka Psychology | Relationships | 8:30 PM |
| Zeheela Sach | Dark Facts | 7:30 PM |
| Apna Haq | Legal Rights | 12:30 PM |
| Agar Aisa Ho Toh | Hypothetical | 1:30 PM |
The Stack (All Free)
- Script generation: Gemini API (free tier, 4-key rotation) + Ollama fallback
- Voice: Google Cloud TTS (Wavenet, free 4M chars/month)
- Images: Pexels API (free stock images)
- Video: MoviePy (Python library, 1080x1920 vertical)
- Upload: YouTube Data API v3 (free)
- Scheduling: macOS LaunchAgents (built-in, free)
Key Trick: 4-Key Rotation
import random
API_KEYS = [
"key_1_from_project_A",
"key_2_from_project_B",
"key_3_from_project_C",
"key_4_from_project_D",
]
def get_api_key():
return random.choice(API_KEYS)
This avoids hitting rate limits on any single key.
Monthly Cost Breakdown
| Service | Cost |
|---|---|
| Google TTS | ₹0 (free tier) |
| Pexels | ₹0 (free API) |
| YouTube API | ₹0 |
| Ollama | ₹0 (local) |
| Mac LaunchAgents | ₹0 (built-in) |
| Total | ₹0 |
The Result
9 channels × 1 video/day = 270 videos/month. Zero effort after initial setup.
🔗 Full automation code: github.com/amrendramishra/ai-tools
🌐 Portfolio: amrendranmishra.dev
Follow for daily AI automation content.
Comments
No comments yet. Start the discussion.