Building a Full BI System with Claude Code and Metabase for Under $50/month

A developer on r/ClaudeAI shared a detailed walkthrough of building a complete business intelligence system using Claude Code (Opus 4.7) instead of hiring BI consultants. After receiving quotes of $15,000 for analytics dashboards, they built the entire system themselves in 3 days for ~$30/month on Google Cloud Platform.
Architecture & Setup
- Connect Claude Code via CLI to GCP — used the Claude CLI tool to interact with Google Cloud services directly.
- Data sources integrated: Stripe, Google Analytics 4, YouTube API (free tier), Google Sheets, Rewardful, and others — all pulled via APIs.
- Data warehouse: Built tables in BigQuery as the single source of truth (SSOT).
- Dashboarding: Installed Metabase (open-source, self-hosted) for the frontend.
Key Design Decisions
The developer spent hours discussing the architecture with Claude. The critical insight: define revenue as the single source of truth (SSOT). All other data layers are built around this core. This constraint keeps Claude focused when validating dashboard data, preventing scope drift.
To maintain coherence as the project grows, they deployed Kartpathi's Wiki LLM for Obsidian Graph on the project's GitHub repo — a "brain system" that tracks context and helps Claude stay aligned with prior decisions. The author plans to open-source this format soon.
Cost Breakdown
- Claude Pro subscription: ~$20/month (what they used).
- Google Cloud Platform (BigQuery + compute): ~$30/month.
- Total: well under $50/month. No per-seat licensing or BI expert fees.
Practical Tips
- Use Google Cloud CLI with Claude Code for direct API access.
- Start with one SSOT (revenue) and layer other metrics around it.
- Self-host Metabase to avoid per-user costs of tools like Looker or Tableau.
- Document the architecture in an Obsidian graph to keep Claude consistent on large projects.
📖 Read the full source: r/ClaudeAI
👀 See Also

Fine-Tuning Qwen 3:0.6B for Question Categorization – Baseline vs Finetuned Results
Fine-tuning a tiny 0.6B parameter LLM (Qwen 3:0.6B) with ~850 household questions using Unsloth. Baseline prompting scored 10% accuracy; finetuned results likely exceed 80-90%.

Claude Code Skills vs. Custom Agents: A Mental Model Based on Task Consistency
A Reddit user clarifies the distinction between Claude Code skills and custom agents: skills execute the same steps every time, while custom agents require reasoning and adaptation. The post also covers parallel subagents, delegation, hooks, and building blocks.

Four Methods to Transfer ChatGPT History to Claude's Memory
Claude now offers memory import for ChatGPT data, but there are four approaches with different trade-offs: built-in import for speed, curated abstraction for control, full export for preservation, or a hybrid method combining all three.

100 Tips for Building a Personal AI Agent: From Cloud Prototype to Production
Six weeks of building a persistent AI agent — not a chatbot wrapper — that manages tasks, tracks deals, reads emails, and analyzes data. Key lessons: Write a Constitution not a system prompt, use flat markdown files for memory, and version your identity file in git.