QuerySnap — Paste a Webpage Screenshot, Get a Working Power Query Formula in 30 Seconds
Finance and ops analysts spend entire afternoons writing Power Query formulas to scrape structured data from web pages they can literally see on their screen. QuerySnap takes a screenshot plus a list of desired fields and returns a ready-to-paste M formula with one click.
Difficulty
beginner
Category
Business Automation
Market Demand
High
Revenue Score
7/10
Platform
Web App
Vibe Code Friendly
No
Hackathon Score
🏆 8/10
Validated by Real Pain
— sourced from real community discussions
Finance and ops teams manually write or hack together Power Query M formulas to pull structured data from web pages, relying on VBA scripts, Selenium, or copy-paste because no tool accepts a visual screenshot as input and returns working Excel code.
What is it?
Every finance analyst has a webpage full of data they need in Excel and a half-broken Power Query formula they found on Stack Overflow three years ago. The actual scraping logic is knowable from the screenshot — the column names, the table structure, the URL pattern — but translating that visual context into working M code takes an hour of trial and error even for experienced users. QuerySnap uses OpenAI Vision to read the screenshot, identify the data structure, and generate a valid Power Query M formula the user can paste directly into Excel's advanced editor. Saved formulas become shareable templates for the team at the $99/month tier. This is a laser-focused AI wrapper with a genuinely specific mechanic — Vision API on a domain where the input is always visual and the output is always code — and it targets a $99/month-comfortable audience of ops and finance teams who already pay for Excel.
Why now?
OpenAI gpt-4o Vision is stable and cheap enough in May 2026 that a single screenshot analysis costs under $0.01, making the per-generation economics trivial — this was not viable at 2023 Vision API prices.
- ▸Drag-and-drop screenshot upload with field name input box.
- ▸OpenAI Vision generates valid Power Query M formula targeting the identified data structure.
- ▸One-click copy formula button with syntax-highlighted preview.
- ▸Team template library at $99/month tier where saved formulas are searchable by URL pattern.
Target Audience
Finance analysts, ops managers, and Excel power users at SMBs — roughly 4 million Power Query users in the US alone.
Example Use Case
A supply chain analyst stops spending 90 minutes every Monday building a Power Query formula for their supplier pricing page and pastes the QuerySnap output directly into Excel in 30 seconds.
User Stories
- ▸As a finance analyst, I want to upload a screenshot of a supplier pricing page and get a Power Query formula, so that I stop spending 90 minutes every Monday on formula trial and error.
- ▸As a team lead, I want to save generated formulas to a shared template library, so that my team reuses proven formulas instead of regenerating them.
- ▸As a new Power Query user, I want to describe the fields I need in plain English alongside the screenshot, so that I get working code without knowing M syntax.
Done When
- ✓Formula Generation: done when user uploads a screenshot, enters field names, clicks Generate, and sees a syntax-highlighted M formula within 10 seconds.
- ✓Copy Button: done when user clicks Copy and can immediately paste the formula into Excel Advanced Editor without any formatting errors.
- ✓Usage Gate: done when a free user's 6th generation attempt shows a Stripe upgrade prompt instead of generating a formula.
- ✓Template Save: done when a team-tier user saves a formula and a teammate on the same team account can see and copy it from the template library page.
Is it worth building?
$15/month x 200 personal users + $99/month x 50 team accounts = $7,950 MRR at month 5. Math: 200 personal at 3% conversion from 6,600 free signups, 50 teams via direct outreach.
Unit Economics
CAC: $8 via Reddit community posts (low-cost organic). LTV: $180 personal (12 months at $15/month) or $1,188 team (12 months at $99/month). Payback: under 1 month. Gross margin: ~92%.
Business Model
SaaS subscription, freemium
Monetization Path
Free tier: 5 formula generations per month. Personal $15/month: unlimited. Team $99/month: shared template library and 5 seats.
Revenue Timeline
First dollar: week 2 via first paid upgrade. $1k MRR: month 2. $5k MRR: month 5.
Estimated Monthly Cost
OpenAI Vision API: $30, Vercel: $20, Supabase: $25, Stripe fees: $15. Total: ~$90/month at launch.
Profit Potential
$5k MRR achievable at month 4 with ProductHunt launch and Reddit r/excel community seeding.
Scalability
Medium — expand to Power Automate flow generation and Google Sheets importdata formulas in V2.
Success Metrics
Week 1: 50 free signups. Week 2: 10 paid conversions. Month 2: 80% monthly retention.
Launch & Validation Plan
Post in r/excel and r/PowerQuery offering free beta access for feedback. Target 20 responses before writing code.
Customer Acquisition Strategy
First customer: DM 20 active contributors in r/PowerQuery offering lifetime free access in exchange for weekly feedback. Ongoing: r/excel posts with worked examples, YouTube tutorial targeting 'how to scrape website in Power Query' search, ProductHunt launch.
What's the competition?
Competition Level
Low
Similar Products
Browse AI handles web scraping but outputs to their own platform not Excel M formulas. Power Query's built-in From Web connector requires manually defining columns. Apify scrapes web data but has no Excel formula output — none target the screenshot-to-M-formula workflow directly.
Competitive Advantage
No existing tool takes a screenshot as input — all competitors require URL access or manual schema definition. Vision API makes the screenshot-to-formula path unique.
Regulatory Risks
Low regulatory risk. Screenshots may contain sensitive business data — privacy policy must cover user-uploaded content and state data is not retained beyond the session.
What's the roadmap?
Feature Roadmap
V1 (launch): screenshot upload, Vision formula generation, copy button, usage gating. V2 (month 2-3): team template library, URL pattern tagging, formula history. V3 (month 4+): Google Sheets importdata output, Power Automate connector generation.
Milestone Plan
Phase 1 (Week 1): schema, auth, Vision API generate endpoint done when formula returns from real screenshot. Phase 2 (Week 2): Stripe billing, usage gate, copy UI done when first paid conversion completes. Phase 3 (Month 2): template library live, 50 paying users reached.
How do you build it?
Tech Stack
Next.js, OpenAI Vision API (gpt-4o), Stripe, Supabase — build with Cursor for the formula generation API, v0 for the upload UI
Suggested Frameworks
OpenAI Node SDK, Next.js App Router, Supabase JS client
Time to Ship
1 week
Required Skills
OpenAI Vision API, Next.js file upload, Stripe billing.
Resources
OpenAI Vision API docs, Next.js file upload guide, Stripe billing quickstart.
MVP Scope
app/page.tsx (upload UI + field input), app/api/generate/route.ts (OpenAI Vision call + M formula output), app/api/templates/route.ts (save and list templates), lib/openai.ts (Vision API client), lib/db/schema.ts (Drizzle schema: users, formulas, templates), components/FormulaPreview.tsx (syntax-highlighted output), components/UploadZone.tsx (drag-drop screenshot), .env.example (OPENAI_API_KEY, SUPABASE_URL, STRIPE_KEY)
Core User Journey
Upload screenshot -> enter desired field names -> click Generate -> copy M formula -> paste into Excel Advanced Editor -> done.
Architecture Pattern
User uploads screenshot + field list -> Next.js API route -> OpenAI Vision API analyzes structure -> M formula string returned -> displayed with syntax highlight -> user copies to Excel -> optionally saved to Supabase templates table.
Data Model
User has many FormulaGenerations. FormulaGeneration has one screenshot reference, one field list, one M formula output. User has many SavedTemplates. SavedTemplate belongs to one Team.
Integration Points
OpenAI Vision API (gpt-4o) for screenshot analysis and formula generation, Supabase for user auth and template storage, Stripe for billing, Vercel for hosting.
V1 Scope Boundaries
V1 excludes live URL scraping, formula execution validation, Google Sheets output, Power Automate flow generation, and browser extension.
Success Definition
A paying stranger uploads a screenshot of a webpage they have never shown the founder, gets a working Power Query formula on first try, and upgrades to the team plan within 30 days.
Challenges
Power Query formula correctness is hard to guarantee — OpenAI Vision will hallucinate column names occasionally, and a wrong formula wastes user time. Adding a live test-run layer (user pastes formula and sees row count) is essential for retention but adds complexity. Distribution challenge: Excel power users live on Reddit r/excel and YouTube, not ProductHunt — budget 3x more time for community seeding than building.
Avoid These Pitfalls
Do not try to execute the formula server-side to validate it — that requires running Excel which is out of scope. Do not attempt to handle dynamic JavaScript-rendered pages in V1 — static HTML screenshot targets only. Finding first 10 paying customers requires being visibly helpful in r/excel before any product mention.
Security Requirements
Supabase Auth with magic link, RLS on all user tables, screenshots deleted from memory after API response, rate limit 20 req/min per user, privacy policy covers uploaded content.
Infrastructure Plan
Vercel for Next.js, Supabase for Postgres and auth, no persistent file storage (screenshots sent in-memory only), GitHub Actions for CI, Sentry for errors.
Performance Targets
OpenAI Vision response under 8s, dashboard page load under 2s, 200 DAU at launch, CDN for static assets.
Go-Live Checklist
- ☐Security audit complete.
- ☐Payment flow tested end-to-end.
- ☐Sentry error tracking live.
- ☐Monitoring dashboard configured.
- ☐Custom domain with SSL active.
- ☐Privacy policy and terms published.
- ☐10+ beta users signed off.
- ☐Rollback plan documented.
- ☐Reddit and ProductHunt launch posts drafted.
First Run Experience
On first run: a pre-loaded demo screenshot of a sample pricing table is shown with two field names pre-filled. User can immediately click Generate and see a real M formula output without uploading anything or entering credentials. No API key required to try the demo — personal API key only needed to save results.
How to build it, step by step
1. Define Drizzle schema in lib/db/schema.ts: users, formula_generations, saved_templates tables. 2. Scaffold Next.js app with Supabase Auth magic link login. 3. Build UploadZone.tsx drag-drop component using react-dropzone for screenshot PNG/JPG input. 4. Build app/api/generate/route.ts that sends screenshot as base64 plus field names to OpenAI gpt-4o Vision and returns M formula string. 5. Build FormulaPreview.tsx with syntax highlight using react-syntax-highlighter and one-click copy button. 6. Build app/api/templates/route.ts CRUD endpoints for saving and listing user formulas in Supabase. 7. Add usage counter middleware that blocks free users after 5 generations per month and prompts Stripe upgrade. 8. Add Stripe checkout at $15/month personal and $99/month team with webhook to update user tier in Supabase. 9. Build team template library page listing all team saved formulas with URL pattern search. 10. Verify: upload a real screenshot, enter two field names, confirm a valid M formula appears with copy button, paste into Excel and confirm it parses without error.
Generated
May 29, 2026
Model
claude-sonnet-4-6
Disclaimer: Ideas on this site are AI-generated and may contain inaccuracies. Revenue estimates, market demand figures, and financial projections are illustrative assumptions only — not financial advice. Do your own research before making any business or investment decisions. Technology availability, pricing, and market conditions change rapidly; always verify details independently.