Coda's AI is woven into the doc — not a separate chatbot. It reads your tables, runs prompts per row, classifies at scale, and answers questions about your actual data. Here's how to use it without burning through your credits.
Coda AI is not a general-purpose chatbot you paste content into. It's built into the doc and has direct access to your tables, pages, and formulas. When you write an AI prompt that references a column, Coda passes the actual cell values into the AI call for you — no copy-paste required.
There are three surfaces where Coda AI operates:
A column type that runs a prompt for each row automatically. Reference any other column with @[Column Name]. Results update when source data changes.
An AI-powered block on a page. Insert with /ai. Runs a prompt against the current page's entire content — tables, text, and embedded docs included.
A chat interface (brain icon, top-right) that answers questions about your entire doc. Ask in natural language — it queries your actual live tables and pages.
An AI column is a regular column with the type set to AI. You write a prompt once, and Coda evaluates it for every row — passing that row's data into the prompt. It's like a formula column, but the computation happens in a language model rather than a formula engine.
To add an AI column: click + on any table → column type → AI. The prompt configuration panel opens. Write your instruction. Reference other columns by typing @[Column Name] — Coda substitutes the actual cell value for that row when it evaluates.
After writing the prompt, click Run all to process all existing rows. New rows added after that will auto-run the AI column unless you've paused it. Coda offers four preset task types — Summarize, Find action items, Find key insights, Classify — plus a Custom prompt option for anything else.
The Summarize preset is ideal for any column containing long-form text: meeting notes, customer feedback, article text, ticket descriptions. Coda generates a condensed version for each row — no manual reading required.
// Meeting notes → 3 bullet points Summarize @[Meeting Notes] in 3 bullet points. Focus on decisions made and open questions. // Customer email → situation summary for a busy reader Summarize @[Email Body] in 2 sentences for a busy executive. Focus on key decisions. // Research article → TL;DR Write a one-sentence TL;DR of this article: @[Article Text]
100 rows of raw meeting notes become 100 concise summaries. Filter and group them in a view to track outstanding decisions across all meetings.
A support inbox with hundreds of emails — one AI column gives every row a two-sentence summary that takes 3 seconds to scan instead of 3 minutes to read.
The Classify task instructs the AI to assign each row to one of a set of categories you define. The output is a tag — consistent, automatically applied, and filterable. Add a Select column type for the AI column so values snap to allowed options and prevent typos.
// Sentiment classification Classify @[Feedback] as exactly one of: Positive, Negative, Neutral. Respond with only the category label. // Support ticket routing Categorize this ticket as one of: Bug, Feature Request, Question, Other. Ticket: "@[Subject] — @[Description]" Respond with only the category label. // Lead scoring Classify this lead as: Hot, Warm, or Cold. Company size: @[Employees]. Industry: @[Industry]. Notes: @[Notes]. Respond with one word only.
Once your AI column assigns labels, the table becomes filterable and groupable by AI-assigned category. Group feedback by sentiment, route tickets by type, or sort leads by temperature — all without a single manual tag.
The Extract pattern finds and returns a specific piece of information from a larger block of text. This is useful when data arrives unstructured — emails, notes, form submissions — but you need it in a column for filtering and sorting.
// Extract company name from an email body Extract the company name from the email below. Return only the company name, nothing else. Email: @[Email Body] // Extract a budget amount Extract the budget amount from: "@[Proposal Text]" Return only the number (e.g., 15000). No currency symbol. // Extract attendee names List the people mentioned in these meeting notes, comma-separated. Notes: @[Meeting Notes]
The Generate pattern creates new content based on data from the row. Write the template once as a prompt — Coda generates personalized content for every row. One AI column can draft 500 follow-up emails as fast as you add rows.
// Draft a follow-up email per contact Write a friendly 2-sentence follow-up email to @[Contact Name] about our meeting on @[Meeting Topic]. Reference the outcome: @[Meeting Summary] // Personalized outreach subject lines Write a compelling email subject line (under 8 words) for outreach to @[Company Name] in @[Industry]. // Product descriptions from specs Write a 50-word product description for "@[Product Name]" with these specs: @[Specs]. Tone: professional, benefit-focused.
An AI block is a canvas element (not a column) that runs a prompt against the entire page's content. Type /ai on any canvas to insert one. Coda analyzes all the text, tables, and embedded content on that page — then produces the output inline.
Summarize page · Find action items · Find key themes · Extract decisions. Click any preset and the AI block runs immediately against the page.
When the page content changes, click "Refresh" on the AI block to re-run the prompt. Useful on meeting pages where notes accumulate throughout the day.
The AI Chat panel — click the brain icon in the top-right of any Coda doc — is a conversational interface that queries your actual doc data. Unlike a general chatbot, it has context about your tables, pages, and their values. It returns answers with citations so you can verify which rows or pages it used.
Coda AI operations consume AI credits. Each workspace has a monthly allocation based on its plan. Each row processed by an AI column = one operation. Running an AI column on 500 rows = 500 operations. Check usage in Workspace Settings → AI.
While you're iterating on a prompt, click "Pause" to stop auto-evaluation. Paused columns don't consume credits. Resume when the prompt is right.
Manually trigger the AI column on a small sample before running it on the full table. Check output quality before committing 500 operations.
If([AI Tag]!="Positive" And [AI Tag]!="Negative" And [AI Tag]!="Neutral", "⚠️ Unexpected", "✓").| Feedback Text | AI Sentiment AI | AI Summary AI |
|---|---|---|
| The onboarding process was confusing. I spent an hour trying to set up my first table and couldn't find documentation. | Negative | Onboarding is confusing; documentation hard to find. User spent excess time on basic setup. |
| I love the formula system — once I got it, it's incredibly powerful. Way better than Notion for data work. | Positive | User praises formula system; finds it more powerful than Notion for data-heavy use cases. |
| The mobile app is okay. Missing some features from desktop but works for quick edits on the go. | Neutral | Mobile app functional but limited vs desktop. Suitable for quick edits only. |
| Automations are a game changer for our workflow. Saved us hours every week on status updates alone. | Positive | Automations significantly reduce manual workflow overhead. High positive impact on team productivity. |