Generate any Excel or Google Sheets formula from plain English · AI diagnoses and fixes broken formulas instantly · Cross-sheet lookup formulas — VLOOKUP, XLOOKUP, INDEX MATCH · Supports 9 languages including Hindi, Arabic, Japanese · 100% Free · No account required · 10 queries/day · Generate any Excel or Google Sheets formula from plain English · AI diagnoses and fixes broken formulas instantly · Cross-sheet lookup formulas — VLOOKUP, XLOOKUP, INDEX MATCH · Supports 9 languages including Hindi, Arabic, Japanese · 100% Free · No account required · 10 queries/day ·
AI Formula Intelligence

Describe it.
Get the exact
formula.

Type what you need — "fetch data from Sheet2", "sum sales by month", "count overdue invoices" — and get the precise, working formula in seconds.

500K+
Formulas generated
9
Languages
Free
No signup
Live example
"I want to fetch data from Sheet2 to Sheet1 — where column A matches, return the price from column B"
=IFERROR(VLOOKUP(A2, Sheet2!A:B, 2, FALSE), "Not found")
Excel Google Sheets
2.1s
Avg response
6
AI tools
VLOOKUP XLOOKUP SUMIF / SUMIFS INDEX MATCH COUNTIF IFERROR DATEDIF FILTER LAMBDA AVERAGEIFS ARRAY TEXTJOIN VLOOKUP XLOOKUP SUMIF / SUMIFS INDEX MATCH COUNTIF IFERROR DATEDIF FILTER LAMBDA AVERAGEIFS ARRAY TEXTJOIN
✦ Formula Generator

The smartest formula tool

Six AI-powered tools. Just describe what you need and get the exact formula.

One-click prompts
← Scroll for more →
Be specific — mention column letters, sheet names, conditions. Ctrl+Enter to generate.
Quick examples:  "Fetch Sheet2 column B where A matches" · "Sum D where B is Paid, last 30 days" · "Count non-blank cells in C" · "Find max value per category"
Paste column headers + 2–3 rows from your actual spreadsheet
Include the full formula with the = sign
Optional — helps target the cause
Optional
Paste a CSV table with a target output column. FormulaGenie detects the pattern and writes the formula — no description needed.
Include the output column with real values so the AI can detect the pattern
Enter a formula and one row of sample data. The AI evaluates every sub-expression step by step — like a calculator that explains itself.
Comma-separated
Same order as headers
Analyze a formula for cross-platform compatibility. Get exact equivalents and warnings about incompatible functions.
Select all targets
Formula Library

30 formulas most people don't know
but use every day

Powerful formulas that solve real problems — click any to instantly load it into the generator.

XLOOKUP with fallback
LOOKUP
Fetch data from another table with a custom 'not found' message — smarter than VLOOKUP
=XLOOKUP(A2,Sheet2!A:A,Sheet2!B:B,"Not found")
Two-way lookup
LOOKUP
Find a value where BOTH a row and column header must match — like a price matrix
=INDEX(B2:E10,MATCH(A2,A2:A10,0),MATCH(B1,B1:E1,0))
Last non-empty cell
LOOKUP
Get the most recent entry in a column — great for running balances or latest status
=LOOKUP(2,1/(A:A<>""),A:A)
Reverse VLOOKUP (left)
LOOKUP
Look up and return a column to the LEFT of your lookup column — impossible with VLOOKUP
=INDEX(A:A,MATCH(D2,C:C,0))
Partial match lookup
LOOKUP
Find a row where a cell CONTAINS your search term (not exact match)
=XLOOKUP("*"&A2&"*",B:B,C:C,"Not found",2)
SUMPRODUCT multi-condition
MATH
Sum values meeting multiple conditions without array entry — more powerful than SUMIFS
=SUMPRODUCT((A2:A100="East")*(B2:B100="Q1")*(C2:C100))
Running total
MATH
Cumulative sum that grows as you go down — for tracking budgets, inventory, or progress
=SUM($B$2:B2)
Rank without ties
MATH
Rank values in a list, handling duplicates cleanly without same rank appearing twice
=SUMPRODUCT((B2>$B$2:$B$100)/COUNTIF($B$2:$B$100,$B$2:$B$100))+1
Weighted average
MATH
Average that gives more importance to some values — used in grading, finance, logistics
=SUMPRODUCT(B2:B10,C2:C10)/SUM(C2:C10)
Percentage of total
MATH
Show each row's value as a percentage of the grand total — for contribution analysis
=B2/SUM($B$2:$B$100)
Extract first/last name
TEXT
Split a full name into first and last — when you have 'John Smith' in one cell
=LEFT(A2,FIND(" ",A2)-1) OR =MID(A2,FIND(" ",A2)+1,100)
Clean phone numbers
TEXT
Remove all non-numeric characters from messy phone number formats
=TEXTJOIN("",TRUE,IF(ISNUMBER(--MID(A2,ROW(INDIRECT("1:"&LEN(A2))),1)),MID(A2,ROW(INDIRECT("1:"&LEN(A2))),1),""))
Nth word from text
TEXT
Extract any specific word from a sentence — useful for parsing structured text fields
=TRIM(MID(SUBSTITUTE(A2," ",REPT(" ",100)),(2-1)*100+1,100))
Count words in a cell
TEXT
Count how many words are in a cell — for character limits, form validation
=LEN(TRIM(A2))-LEN(SUBSTITUTE(TRIM(A2)," ",""))+1
Combine with separator
TEXT
Join values from multiple cells with a comma or separator, skipping blanks automatically
=TEXTJOIN(", ",TRUE,A2:A10)
Age from birthday
DATE
Calculate exact age in years from a date of birth — always current as of today
=DATEDIF(A2,TODAY(),"Y")
Working days between dates
DATE
Count business days between two dates, excluding weekends and optionally holidays
=NETWORKDAYS(A2,B2,holidays)
Add months to a date
DATE
Move a date forward by N months — handles month-end edge cases correctly
=EDATE(A2,3)
First/last day of month
DATE
Get the first or last date of any month — for monthly reporting periods
=EOMONTH(A2,0) OR =EOMONTH(A2,-1)+1
Days until deadline
DATE
Calculate how many days remain before a deadline — shows negative if overdue
=B2-TODAY()
Nested IF simplified
LOGIC
Replace complex nested IF chains with IFS — much easier to read and maintain
=IFS(A2>=90,"A",A2>=80,"B",A2>=70,"C",A2>=60,"D",TRUE,"F")
Error-proof any formula
LOGIC
Wrap any formula to show a custom message instead of #N/A, #VALUE!, or #DIV/0!
=IFERROR(your_formula_here,"Not found")
Highlight duplicates
LOGIC
Mark duplicate values in a column — use in conditional formatting or as a helper column
=COUNTIF($A$2:$A$100,A2)>1
Dynamic status label
LOGIC
Assign 'High/Medium/Low' or traffic light labels based on numeric thresholds
=IF(A2>80,"🟢 High",IF(A2>50,"🟡 Medium","🔴 Low"))
Conditional count %
LOGIC
Calculate what percentage of rows meet a condition — for pass rates, completion rates
=COUNTIF(B:B,"Complete")/COUNTA(B:B)
Unique list from column
ARRAY
Extract all unique values from a column into a clean list — no duplicates, no blanks
=UNIQUE(FILTER(A2:A100,A2:A100<>""))
Top 5 with names
ARRAY
Return top N values AND their associated names together as a sorted table
=SORT(FILTER(A2:B100,RANK(B2:B100,B2:B100,0)<=5),2,-1)
Filter by multiple criteria
ARRAY
Show only rows matching complex conditions — like an instant query/filter without VBA
=FILTER(A2:D100,(B2:B100="Active")*(C2:C100>1000))
Conditional unique count
STATS
Count DISTINCT unique values that match a condition — a common reporting need
=SUMPRODUCT((B2:B100="Active")/COUNTIFS(A2:A100,A2:A100,B2:B100,"Active"))
Percentile rank
STATS
Show where a value falls in a distribution — what percentile is this person/product at?
=PERCENTRANK($B$2:$B$100,B2)*100
Moving average
STATS
Smooth out noisy data with a rolling average — great for trend analysis
=AVERAGE(OFFSET(B2,-MIN(ROW(B2)-ROW($B$2),2),0,MIN(ROW(B2)-ROW($B$2)+1,3),1))
Why FormulaGenie

Not just a formula generator.
A formula expert.

Every tool is built around understanding your actual intent — not keyword pattern-matching.

Intent-aware AI
Understands "fetch from another sheet", "count last 30 days", "sum by region" — and picks the correct formula type automatically.
Visual Debugger
Breaks any formula into sub-expressions and evaluates each against your sample data — step by step, in plain English.
Cross-Platform
Converts any formula between Excel, Google Sheets, and Airtable with precise function-level warnings and substitutions.
Example-to-Formula
Paste input/output data — the AI reverse-engineers the formula that produces your results with confidence scoring.
Common Questions

Real questions from real users

Everything you need to know about using FormulaGenie effectively

Formula Generation
How do I pull data from one sheet to another?
Type something like: "Fetch the price from Sheet2 where the product ID in Sheet2 column A matches A2 in my current sheet". FormulaGenie will generate the exact VLOOKUP or XLOOKUP formula with the correct Sheet2!A:B cross-sheet reference syntax — no guessing needed.
How do I sum values only for a specific month or date range?
Describe it naturally: "Sum column D where the date in column A is in January 2024" or "Total sales in column C for the last 30 days". FormulaGenie will use SUMIFS with the right EOMONTH or TODAY()-30 date logic automatically.
Can I count how many items match two conditions at once?
Yes. Say: "Count rows where status in column B is Approved AND the amount in column C is greater than 1000". FormulaGenie generates COUNTIFS(B:B,"Approved",C:C,">1000") — handling multiple conditions in one formula. You can add as many conditions as needed.
What's the difference between VLOOKUP and XLOOKUP? Which should I use?
XLOOKUP is the modern replacement — it can look left or right, handles "not found" gracefully without IFERROR, and won't break when you insert columns. Use XLOOKUP if you have Excel 365, Excel 2021, or Google Sheets (2022+). Use VLOOKUP only if you need files to open in Excel 2019 or older. FormulaGenie picks the right one based on your complexity setting.
Google Sheets
How do I use IMPORTRANGE to pull data from another Google Sheet file?
Type: "Pull column B from a different Google Sheets file using IMPORTRANGE". FormulaGenie will generate =IMPORTRANGE("spreadsheet_url","Sheet1!B:B") with instructions to authorize the connection on first use. For lookups across files, it combines IMPORTRANGE with VLOOKUP or INDEX MATCH.
Can FormulaGenie write QUERY function formulas for Google Sheets?
Yes. Describe what you need: "Filter rows where region is North and sort by sales descending". FormulaGenie generates the full QUERY formula with the correct SQL-like syntax: =QUERY(A:D,"SELECT A,B,C WHERE C='North' ORDER BY D DESC",1).
Fixing Errors
My formula shows #N/A — how do I hide it or show a blank instead?
Wrap your formula with IFERROR. For example: =IFERROR(VLOOKUP(A2,Sheet2!A:B,2,FALSE),"") returns blank when not found. Or use =IFERROR(formula,"Not found") for a message. Paste your formula in the Fix Formula tab and FormulaGenie will add the wrapper automatically.
Why does my formula work on one row but give wrong results when I copy it down?
This is usually a missing $ (dollar sign) to lock a cell reference. For example, if your lookup table is in A1:B100, it should be written as $A$1:$B$100 so it doesn't shift when you copy the formula down. Paste your broken formula in the Fix Formula tab — FormulaGenie will identify exactly which references need locking.
I get a #VALUE! error — what does it mean and how do I fix it?
#VALUE! usually means a formula is trying to do math on text, or you passed the wrong data type to a function. Common causes: a number stored as text, mixing dates and text, or using a range where a single cell is expected. Paste your formula and the error in the Fix Formula tab — the AI diagnoses the exact cause and returns a corrected version.
Tips & Best Practices
What's the best formula to find the second highest value in a column?
Use the LARGE function: =LARGE(A:A, 2) returns the 2nd largest value. For the 3rd: =LARGE(A:A, 3). If you need to also return the name or row associated with that value, use INDEX MATCH combined with LARGE. Type your need in FormulaGenie and it builds the full formula.
How do I calculate someone's age from their date of birth in Excel?
Use DATEDIF: =DATEDIF(A2,TODAY(),"Y") returns the age in complete years. Or use =INT((TODAY()-A2)/365.25) as an alternative. For months and days too: =DATEDIF(A2,TODAY(),"Y")&" years, "&DATEDIF(A2,TODAY(),"YM")&" months".
Is FormulaGenie free? How many formulas can I generate?
Yes — completely free. You get 10 formula generations per day with no account or credit card required. The counter resets daily at midnight. All 6 tools (Generate, Fix, Template, Example-to-Formula, Debugger, Compatibility) count toward the daily limit.