Professional translation costs $0.10 to $0.30 per word. Your spreadsheet has 10,000 rows.
A 2,000-product catalog with 50-word descriptions means roughly one million words. At professional translation rates, that is $100,000 to $300,000 per target language. Even with bulk discounts, localizing into five languages can run six figures.
Most businesses do not have that budget. So they skip localization entirely and leave money on the table in non-English markets. Or they run everything through Google Translate and hope for the best. The output reads like it was written by a machine, because it was.
There is a middle path. =AITRANSLATE() in SheetMagic sends your text to a large language model that understands context, tone, and industry-specific terms. The output reads like it was written by a fluent speaker. And because it is a spreadsheet formula, you translate one row, check the quality, then drag the formula down to process your entire dataset.
This guide covers the formula syntax, five real-world translation workflows, quality control techniques, and a multi-language matrix pattern. That pattern lets you maintain translations for every market from a single source sheet.
If you are new to SheetMagic, start with the getting started guide to install the add-on and run your first formula.
The AITRANSLATE formula
=AITRANSLATE(A2, "Spanish")Translates the text in A2 into Spanish. The source language is auto-detected.
The syntax is simple:
=AITRANSLATE(text, targetLanguage, sourceLanguage)
| Argument | Required | Description |
|---|---|---|
text | Yes | The cell reference or string to translate |
targetLanguage | Yes | The language to translate into (e.g., "Spanish", "Japanese", "pt-BR") |
sourceLanguage | No | The source language. Omit this and the AI auto-detects it, which works well for any major language |
Auto-detection handles the vast majority of cases. You only need the third argument when your source text is unclear. For example, short phrases that could be more than one language, or text that mixes languages in a single cell.
=AITRANSLATE(A2, "German", "English")Explicitly sets English as the source language. Use this when source text is very short or could be ambiguous.
You can use language names in English ("Spanish", "Japanese", "Brazilian Portuguese") or standard locale codes ("es", "ja", "pt-BR"). Both work. Use whichever feels more readable in your sheet.
Scenario 1: Translating a product catalog for international marketplaces
You sell on Amazon US and want to expand to Amazon Germany, Japan, and Mexico. Your catalog has 500 products. Each one has a title, description, and bullet points.
Sheet layout:
- Column A: Product title (English)
- Column B: Product description (English)
- Column C: German title
- Column D: German description
- Column E: Japanese title
- Column F: Japanese description
- Column G: Spanish title
- Column H: Spanish description
=AITRANSLATE(A2, "German")Translates the English product title in A2 to German. Put this in C2.
=AITRANSLATE(B2, "German")Translates the English product description in B2 to German. Put this in D2.
Repeat the pattern for Japanese (columns E-F) and Spanish (columns G-H). Then select C2:H2, drag down to row 501, and your entire catalog is translated into three languages.
Why AITRANSLATE works so well for product listings:
Product descriptions use industry-specific language. A stainless steel water bottle is an "Edelstahl-Trinkflasche" in German. That is not a word-by-word translation. LLMs trained on billions of product descriptions in every language understand these patterns. The output reads like native marketplace copy because the model has seen millions of examples of what that looks like.
=AITRANSLATE("16oz double-walled vacuum insulated tumbler with leak-proof lid", "Japanese")Translates a product spec string directly. The AI preserves the technical specificity while producing natural Japanese.
Expected output:
16オンス 二重壁真空断熱タンブラー 漏れ防止蓋付き
The measurement unit, the technical insulation terms, and the feature callout all translate correctly. The model understands product listing conventions in Japanese.
Each AITRANSLATE call uses AI tokens from the same pool as AITEXT and other AI formulas. A 50-word product description typically uses 200-400 tokens per translation. For high-volume translation work, bringing your own API key can really cut your per-token costs.
Scenario 2: Translating customer support tickets
Your support team gets tickets in English, Spanish, Portuguese, and French. Your agents only speak English. You need every ticket translated into English before triage.
Sheet layout:
- Column A: Ticket ID
- Column B: Original message (any language)
- Column C: English translation
- Column D: Detected source language
=AITRANSLATE(B2, "English")Translates the support ticket in B2 to English. Source language is auto-detected regardless of what the customer wrote in.
For column D, use =AITEXT() to identify the source language:
=AITEXT("What language is this text written in? Return only the language name, nothing else.", B2)Detects the language of the support ticket. Returns a clean label like 'Spanish' or 'Portuguese'.
Now your agents see every ticket in English with the original language tagged. They can triage and respond without language barriers. When they write a response, you reverse the flow:
=AITRANSLATE(E2, D2)Translates the English response in E2 back into the customer's original language (identified in D2). The target language is a cell reference, not a hardcoded string.
This is a really useful pattern. The target language is a cell reference. Column D says "Portuguese", so the formula translates the response into Portuguese. Column D says "French", and the same formula translates into French. One formula handles every language pair on its own.
Scenario 3: Localizing marketing copy
Marketing translation is harder than product translation. You are not just converting words. You are preserving tone, cultural references, and persuasive flow. A tagline that works in English might fall flat in German if you translate it literally.
This is where combining =AITRANSLATE() with =AITEXT() helps a lot.
Step 1: Translate the copy.
=AITRANSLATE(A2, "French")Translates the marketing headline in A2 to French.
Step 2: Refine for tone and cultural fit.
=AITEXT("Review this French marketing headline. Is it natural, persuasive, and culturally appropriate for a French audience? If not, rewrite it to sound native. Return only the final version.", B2)Uses a second AI pass to evaluate and improve the translation for marketing effectiveness. B2 contains the initial AITRANSLATE output.
Step 3: Generate locale-specific variations.
=AITEXT("Write 3 alternative French headlines for this product concept. Each should use a different persuasive angle (benefit-driven, curiosity-driven, social proof). Separate with pipes.", A2)Generates original French headlines rather than translations. Sometimes the best localization is not a translation at all.
This three-step pattern produces marketing copy that holds up against human localization teams. The first translation captures meaning. The review pass catches awkward phrasing. The alternatives give your local marketing team options to choose from.
For marketing copy, Claude and GPT-5 tend to produce the most natural-sounding output. Gemini handles Asian languages particularly well. You can switch models under Extensions > SheetMagic > Settings without changing any formulas. See the AI formulas guide for model recommendations by task.
The multi-language matrix pattern
This is the most useful pattern for teams managing translations at scale. You keep one source column and generate every target language from it.
Sheet layout:
| A | B | C | D | E | F | |
|---|---|---|---|---|---|---|
| 1 | Source (English) | Spanish | French | German | Japanese | Portuguese |
| 2 | Your content here | =AITRANSLATE(A2, "Spanish") | =AITRANSLATE(A2, "French") | =AITRANSLATE(A2, "German") | =AITRANSLATE(A2, "Japanese") | =AITRANSLATE(A2, "Portuguese") |
Every translation column points back to column A. When you update the English source text, every translation regenerates automatically. You never have to track which translations are stale because they all come from the same source.
=AITRANSLATE($A2, B$1)Uses mixed references: $A2 locks the source column, B$1 locks the header row. Drag this formula right across language columns and down across content rows. One formula fills the entire matrix.
The mixed cell reference trick is what makes this work. $A2 always reads from column A (the source). B$1 always reads from row 1 (the language name in the header). Write the formula once in B2, drag it to F2, then select B2:F2 and drag down to your last row. One formula, one drag in each direction, and your entire translation matrix is filled.
For large matrices (500+ rows across 5+ languages), consider processing in batches. Running 2,500 translation calls at once can hit rate limits depending on your plan. Translate one language column at a time, or see the batch processing guide for strategies on handling high-volume formula runs.
Scenario 4: Translating customer reviews for market research
You are expanding into Brazil and want to understand what Brazilian customers say about competing products. You have scraped 200 Portuguese reviews from competitor listings. Now you need to analyze them in English.
Translate reviews to English
Column A has the original Portuguese reviews. Column B gets the translation:
=AITRANSLATE(A2, "English", "Portuguese")Explicitly sets Portuguese as the source language since all reviews are from a Brazilian marketplace.
Extract sentiment and themes
Use =AITEXT() on the English translation to classify each review:
=AITEXT("Analyze this product review. Return exactly: Sentiment (Positive/Neutral/Negative) | Main complaint or praise | Product feature mentioned. Pipe-separated, nothing else.", B2)Structured extraction from the translated review. Use =SPLIT(C2, "|") afterward to break into columns.
Generate a market summary
After processing all 200 reviews, use =AITEXT() to pull it all together:
=AITEXT("Based on these 20 translated customer reviews, identify the top 3 unmet needs and the top 3 things customers love. Format as two numbered lists.", B2:B21)Feeds a range of translated reviews as context. Produces a competitive intelligence summary you can act on.
This workflow turns foreign-language reviews into real market intelligence. You skip the step of reading translations one by one and go straight to patterns and insights.
Quality control: verifying your translations
AI translation is good. It is not perfect. Here are three quality control techniques that catch errors before they reach your customers.
Technique 1: Back-translation verification
Translate the output back to the source language and compare it to the original. Big differences signal a possible mistranslation.
=AITRANSLATE(B2, "English")B2 contains the Spanish translation of A2. This back-translates it to English. Compare the result in C2 against the original in A2.
=AITEXT("Compare these two English texts. Are they saying the same thing? If there are meaningful differences, describe them in one sentence. If they match, return MATCH.", A2&" ||| "&C2)Automated comparison between the original English and the back-translated English. Flags rows that need human review.
Filter column D for anything that is not "MATCH" and you have a prioritized list of rows to review by hand. This catches meaning shifts, missing details, and made-up additions.
Technique 2: Glossary enforcement
For technical or brand-specific terms, you want consistent translations across every row. Create a glossary sheet and reference it in your translation workflow.
Glossary sheet (named "Glossary"):
| English | Spanish | German | Japanese |
|---|---|---|---|
| SheetMagic | SheetMagic | SheetMagic | SheetMagic |
| AI tokens | tokens de IA | KI-Token | AIトークン |
| integration credits | creditos de integracion | Integrationsguthaben | 統合クレジット |
Then use =AITEXT() for a glossary-aware translation pass:
=AITEXT("Translate this text to Spanish. Use these exact term translations — do not deviate: "&Glossary!A2&"="&Glossary!B2&", "&Glossary!A3&"="&Glossary!B3&", "&Glossary!A4&"="&Glossary!B4&". Return only the translation.", A2)Injects glossary terms directly into the translation prompt. The AI follows the specified terminology.
This takes more effort than a plain =AITRANSLATE() call. But it makes sure brand terms and technical words stay consistent across your entire catalog.
Technique 3: Human-in-the-loop review columns
Add a "Status" column and a "Reviewer Notes" column next to each translation. Use conditional formatting to highlight rows that have not been reviewed. This turns your translation spreadsheet into a lightweight translation management system.
=AITEXT("Rate the quality of this translation on a scale of 1-5 where 5 is native-quality. Consider: grammar, naturalness, completeness, and tone preservation. Return only the number.", B2)Automated quality score for each translation. Filter for scores below 4 to prioritize human review.
Rows scoring 4 or 5 can ship as-is. Rows scoring 3 or below get flagged for a native speaker to check. This cuts the human review workload by 60-80% while keeping quality high.
Handling nuance: context-aware translation
Preserving tone
A casual customer email and a formal legal document need different translation styles. Tell the AI what you need.
=AITRANSLATE(A2, "Japanese")Default translation. The AI infers tone from the source text.
When the default is not enough, use =AITEXT() with clear tone instructions:
=AITEXT("Translate this to Japanese using formal/polite register (desu-masu form). This is customer-facing support documentation. Return only the translation.", A2)Forces formal Japanese register. Critical for B2B communications where casual language would be inappropriate.
Technical terminology
If your content has industry jargon, give the AI context so it translates terms correctly instead of literally:
=AITEXT("Translate this to German. Context: this is a SaaS product description about spreadsheet software. Technical terms like API, webhook, and add-on should use their standard German software equivalents. Return only the translation.", A2)Domain context prevents the AI from translating 'webhook' literally or using incorrect technical equivalents.
Handling text that should not be translated
Product SKUs, brand names, and code snippets should pass through unchanged. Be explicit about it:
=AITEXT("Translate this product listing to Spanish. Do not translate: brand names, model numbers, SKU codes, or measurement units. Keep those in their original form. Return only the translation.", A2)Preserves identifiers and codes while translating the descriptive text around them.
Scaling up: translation for large datasets
For datasets beyond a few hundred rows, efficiency matters. Here are patterns that keep things fast and cost-effective.
Use AILISTH for multi-field translations
If you have a product name and a description that both need translation, you can cut API calls by combining them:
=AILISTH("Translate both of these to French. Return them separated by a pipe character: 1) "&A2&" 2) "&B2)Translates two fields in a single API call. Use =SPLIT() to separate the results back into individual columns.
This cuts your token usage roughly in half compared to running two separate =AITRANSLATE() calls per row.
Bring Your Own Key for high-volume work
On the free tier, you get 3,000 AI tokens (one-time trial). Paid plans range from 3 million to 80 million tokens per month. If you are translating thousands of product listings regularly, bringing your own API key lets you use your own provider account. LTD plan holders always use BYOK with unlimited tokens.
Token estimation
A rough guide for translation token costs:
| Content type | Avg. words | Tokens per translation | 1,000 rows cost |
|---|---|---|---|
| Product title | 10 | 50-100 | 50K-100K tokens |
| Product description | 50 | 200-400 | 200K-400K tokens |
| Support ticket | 100 | 400-800 | 400K-800K tokens |
| Marketing paragraph | 150 | 600-1,200 | 600K-1.2M tokens |
These estimates include both the input (source text + instructions) and output (translated text). Actual usage varies by language pair. Translating to Japanese or Chinese typically uses more tokens than translating to Spanish or French because of tokenization differences.
Scenario 5: Building a multilingual FAQ page
You maintain an FAQ with 40 questions and answers in English. You need the same FAQ in Spanish, French, and German for your international sites.
Sheet layout:
- Column A: English question
- Column B: English answer
- Columns C-D: Spanish Q&A
- Columns E-F: French Q&A
- Columns G-H: German Q&A
=AITRANSLATE($A2, C$1)Translates the English question. C$1 contains 'Spanish'. Lock patterns let you drag across languages and down across rows.
=AITRANSLATE($B2, D$1)Translates the English answer. Same locking pattern for the answer column.
For FAQ content, accuracy matters a lot. Add a back-translation verification column for each language:
=AITEXT("Does this Spanish Q&A pair make sense? Is the answer actually answering the question? If yes, return OK. If not, explain the issue in one sentence.", C2&" — "&D2)Sanity check that the translated question and answer still form a coherent pair.
This catches cases where the question and answer drift apart in translation. That is a common problem when translating Q&A pairs separately.
When to use AITRANSLATE vs. AITEXT for translation
=AITRANSLATE() is built specifically for translation. It handles language detection, preserves formatting, and gives you clean output with no extra commentary.
=AITEXT() with a translation prompt gives you more control. Use it when you need:
- Tone or register instructions ("translate formally", "translate casually")
- Glossary enforcement (inject specific term mappings into the prompt)
- Partial translation (translate some parts, keep others unchanged)
- Translation plus transformation ("translate to Spanish and shorten to under 100 characters")
| Use case | Best formula |
|---|---|
| Straightforward translation | =AITRANSLATE() |
| Translation with tone control | =AITEXT() |
| Translation with glossary terms | =AITEXT() |
| Bulk catalog translation | =AITRANSLATE() |
| Marketing localization | =AITRANSLATE() + =AITEXT() review pass |
| Translation + summarization | =AITEXT() |
Start translating
Here is the quickest way to get going. Open a Google Sheet. Put some English text in column A. Type this in B2:
=AITRANSLATE(A2, "Spanish")Your first translation. One cell, one result.
Check the output. If it looks good, drag the formula down. If you need a different language, change "Spanish" to whatever you need. If you need five languages, use the multi-language matrix pattern from earlier in this guide.
For e-commerce teams localizing product catalogs, the combination of =AITRANSLATE() for bulk translation and =AITEXT() for quality checks replaces the most expensive and slowest part of going international. You do not need a $100,000 translation budget. You need a spreadsheet and the right formulas.
For localization teams managing ongoing translation, the single-source-of-truth matrix pattern means you update English once and every language regenerates. No more tracking stale translations across separate files.
You can try all of this on the free tier. You get 3,000 AI tokens (one-time trial), which is enough to translate a few dozen rows and check the quality. No credit card needed.
Install SheetMagic free from the Google Workspace Marketplace and translate your first row in the next two minutes.
For more guides: Getting started with SheetMagic | AI formulas guide | Prompt templates | Batch processing | BYOK guide

