AI Tokens vs Scraping Credits: Spend Less, Skip Surprises
AI tokens pay for AI formulas, scraping credits pay for scrapes, and both reset each billing cycle. Knowing which pool a formula draws from lets you pick the cheaper model, size your plan from a 10-row test, and never run dry halfway through a job. Usage never adds a charge.
Phil Nguyen · 17 min read · Updated

AI tokens pay for formulas where an AI model writes, reads or draws, and scraping credits pay for formulas that fetch data from the web. Knowing which pool each formula uses, and what makes a call cheap or expensive, is how you pick the cheaper model, buy the right plan and never run dry halfway through a 1,000-row job.
Say you run client jobs at a small agency. You bought Growth at $80 a month "to be safe" because you could not tell how far Solo's allowance would go. If a 10-row test shows Solo at $20 covers your month, that is $60 a month, $720 a year, you did not need to spend. The other way round is worse: the pool runs out on row 600 of a client deliverable. This guide shows how both pools work, so you can do that test and trust the result.
Note
Usage never adds a charge to your bill. Your plan price is the bill. When a pool runs out, the formulas that need it stop until your next reset, or until you add a credit pack yourself from the dashboard.
Two pools, two meters
SheetMagic formulas fall into two groups:
- AI formulas that send prompts to language models and return generated content
- Scraping formulas that pull data from websites and search engines
Each group runs on its own meter. AI tokens track the first. Scraping credits track the second. They don't overlap. An =AITEXT() call never touches your scraping credits. And a =VISIT() call never touches your AI tokens.
AI tokens: what they cover
AI tokens measure every formula that talks to a language model, image generator, video model, or speech engine. If AI is doing the thinking, it costs tokens.
Formulas that use AI tokens
Formula
=AITEXT("Write a 100-word product description for: " & A2)Text generation. Token cost depends on how long your prompt is and how long the AI's response is.
Formula
=AILIST("List 10 blog post ideas about " & A2)List generation. Each item in the list adds to the output token count.
Formula
=AIIMAGE("A flat-lay photo of a minimalist desk setup, soft natural lighting")Image generation. Token cost varies by model. GPT Image and Gemini image models have different rates.
Formula
=GPTV(A2, "Describe the product in this image. Return: name, color, category.")Vision analysis. You send an image URL to an AI model. The image itself counts toward your input tokens.
Formula
=AISPEECH(A2, "nova")Text-to-speech. Converts the text in A2 to audio using one of the OpenAI voices, such as nova, or a Gemini voice.
Formula
=AIVIDEO("A 5-second product showcase, rotating 360 degrees on a white background")Video generation on Gemini Omni 1.1 Flash (choose Gemini as your video provider). Costs more tokens because video output is complex.
The pattern is always the same. Your prompt goes in, the model processes it, and a result comes back. How many tokens that costs depends on three things:
- Input size. Longer prompts and bigger context (like pointing
=AITEXT()at a cell holding a full=VISIT()page) use more tokens. - Output size. A 500-word product description costs more than a one-word sentiment label.
- Which model you pick. What a call deducts follows the model's own price. GPT-5 is priced at about 8 times GPT-4o mini for input and about 16 times for output. Claude Opus 5 is priced at 5 times Claude Haiku 4.5. You can switch models anytime in Extensions > SheetMagic > Open AI Settings.
Tip
Doing high-volume work like classifying thousands of rows? Switch to a smaller model (GPT-4o Mini, Claude Haiku, Gemini Flash). For simple tasks like classification, the quality difference is tiny and the same allowance covers many times more rows.
Token allowances by plan
| Plan | Monthly AI Tokens |
|---|---|
| Free | 20,000 (one-time, no expiry) |
| Solo ($20/mo) | 3,250,000 |
| Growth ($80/mo) | 12,000,000 |
| Scale ($200/mo) | 30,000,000 |
How do you know how far your tokens go?
Because the cost depends on your prompt, your output length and your model, no fixed table is honest for every sheet. A 10-row test is:
Note your balance
Open the dashboard and write down your remaining AI tokens.
Run the formula on 10 rows
Use the exact prompt and model you plan to use for the full job.
Multiply
Check the balance again. The difference divided by 10 is your cost per row. Multiply by your row count. If 10 rows used 3,000 tokens, 1,000 rows will use about 300,000, under a tenth of Solo's 3,250,000.
If the answer is bigger than you like, change the model or shorten the output before you drag the formula down, not after.
Scraping credits: what they cover
Scraping credits power the formulas that go out and grab data from the web. No AI involved. These are your scraping, search, and data extraction tools.
Formulas that use scraping credits
Formula
=VISIT("https://example.com/pricing")Scrapes up to 50,000 characters of text content from the URL. Handles JavaScript-rendered pages.
Formula
=SERP("best project management tools 2026", 10, "us-en")Returns up to 10 search results with titles, URLs, and snippets. Runs on DuckDuckGo and costs 1 scraping credit per search.
Formula
=GETSELECTOR("https://example.com", "h2.product-title")Extracts content matching a CSS selector from the target page.
Formula
=PAGEDATA(A2, A3, A4, A5)Extracts the meta title, meta description and H1 from multiple URLs at once, with a Success or Failed status per URL.
Formula
=DOMAINCHECK("mybrand.ai")Checks domain availability via the RDAP protocol. Supports 21 TLDs, including .com, .io, .ai and .co. Free: uses no credits.
Formula
=GETMETATITLE(A2)Returns the meta title tag from the URL in A2.
Here's the big difference from tokens. Scraping formulas cost a set number of credits per call, not per word. It doesn't matter if the page has 500 words or 50,000. Basic page scrapes cost 1 credit (2 for a JavaScript-rendered page, up to 9 on bot-protected sites), Google and YouTube searches cost 3, and Amazon lookups cost 1.
Note
Here's the simplest way to think about it. AI tokens are variable (cost scales with how much text goes in and comes out). Scraping credits are per call (each call costs the same no matter how long the page is).
Credit allowances by plan
| Plan | Monthly Scraping Credits |
|---|---|
| Free | 100 (one-time, no expiry) |
| Solo ($20/mo) | 10,000 |
| Growth ($80/mo) | 45,000 |
| Scale ($200/mo) | 115,000 |
What does each function cost?
| Function | Credits per Call |
|---|---|
=SERP() | 1 credit per search |
=BULKSERP() | 1 credit per search |
=DOMAINCHECK() | Free |
=VISIT() | 1 |
=GETSELECTOR() | 1 |
=GETIMG() | 1 |
=PAGEDATA() (per URL) | 1 |
=GETMETATITLE() | 1 |
=GETMETADESCRIPTION() | 1 |
=GETH1() / =GETH2() | 1 |
=GSEARCH() / =GNEWS() / =GMAPS() / =YTSEARCH() | 3 |
Page functions show the basic-page price. A page that needs JavaScript rendering costs 2, and a bot-protected site up to 9.
Note
=SERP() and =BULKSERP() cost 1 scraping credit per search, however many results come back, and use no AI tokens. =DOMAINCHECK() is free on every plan, including Free: it draws down neither your scraping credits nor your AI tokens. The Google and YouTube functions (=GSEARCH, =GNEWS, =GMAPS, =GTRENDS, =GSHOPPING, =GFLIGHTS, =GHOTELS, =YTSEARCH) run on a paid structured-data API, which is why they cost 3 credits per call.
On Solo with 10,000 credits, that's 10,000 basic page scrapes or DuckDuckGo searches, about 3,300 Google searches, or any mix per month. Domain checks are on top, since they don't count against the pool.
The page formulas, SERP and BULKSERP also cache their results per user for 6 hours. Reopening the sheet or a recalculation with the same inputs inside that window reads the cache and costs nothing.
Why not just combine them into one number?
Fair question. It comes down to cost structure.
AI tokens need GPU compute from providers like OpenAI, Google, and Anthropic. That cost scales with how much you generate and which model you pick. Scraping credits need web infrastructure (proxy networks, headless browsers, caching layers). That cost scales with how many requests you make, not how complex the content is.
If we bundled them into one pool, every plan would have to compromise. With two separate meters, things work out better for everyone:
- Content teams writing thousands of AI-generated descriptions don't get penalized for the occasional page scrape
- SEO teams auditing thousands of URLs don't get penalized for the occasional AI call
- You can see exactly where your usage goes in the dashboard, broken out by type
How the monthly reset works
Both AI tokens and scraping credits reset to your full plan allowance at the start of each billing cycle. Unused amounts don't roll over.
Here's what that looks like in practice:
You subscribe to Solo on April 5
Your billing cycle starts April 5. You get 3.25M AI tokens and 10K scraping credits.
By April 28, you've used 2.1M tokens and 6,000 credits
You've still got 1.15M tokens and 4,000 credits left for the rest of this cycle.
May 5 hits and your cycle resets
Your balances go back to the full 3.25M tokens and 10K credits. The 1.15M tokens and 4,000 credits you didn't use in April? Gone. Fresh start.
Caveat
Unused tokens and credits don't carry over. If you've got a big batch job coming up, check your remaining balance in the dashboard before you kick it off.
Why no rollover?
Rollover sounds nice, but it makes costs unpredictable on our side and balances confusing on yours. The flat monthly reset keeps things simple. You always know how much you have. And it's always the same number on day one of each cycle.
How do you use the two pools to spend less?
Once you know which pool a job draws from, four choices keep your bill at the plan you actually need:
Pick the small model for bulk work. A 1,000-row classification column on GPT-4o mini instead of GPT-5 is priced at about a sixteenth for output. The same Solo allowance covers many times more rows, and you stay on Solo instead of upgrading.
Size the plan from a test, not a guess. Run the 10-row test above for each job you do in a month and add the results. If the total fits in Solo's 3,250,000 tokens and 10,000 credits, Growth's extra $60 a month buys you nothing.
Turn on BYOK when AI is the big line. On a paid plan, your own OpenAI, Anthropic or Google key takes AI usage off your token meter entirely, and it raises your monthly scraping credits by 50%. On Solo that is 15,000 credits instead of 10,000, for the same $20.
Buy a pack for a one-off spike instead of upgrading. A credit pack lasts 12 months and is only used after your monthly allowance runs out, so a single big client job does not commit you to a bigger plan every month.
What to do when you need more
You've got three options.
1. Move to a bigger plan
If you're running out before the cycle ends every month, bump up a tier. Going from Solo to Growth gives you about 3.7 times the tokens (12M vs 3.25M) and 4.5 times the credits (45K vs 10K).
2. Buy a credit pack
Want a one-time boost without switching plans? Grab a credit pack from the dashboard. You can get packs for AI tokens, scraping credits, or both. They're good for 12 months, so they don't disappear at the end of your billing cycle like your monthly allowance does.
Credit packs kick in after your monthly pool runs dry. If you buy a 1M token pack on Solo, your formulas will use the 3.25M monthly tokens first. Then they start pulling from the pack.
Note
Credit packs are available to all paid subscribers.
3. Turn on BYOK for unlimited AI
If AI tokens are the bottleneck, BYOK (Bring Your Own Key) removes the cap entirely. Plug in your own API key from OpenAI, Google, or Anthropic. Pay them directly at their rates. And your SheetMagic token meter stops ticking.
BYOK is included on all paid plans. Scraping credits still apply, though. BYOK only bypasses the AI token pool, and it raises your monthly scraping credits by 50%.
Quick reference: which formula uses what
| Formula | Currency | What It Does |
|---|---|---|
=AITEXT() | AI Tokens | Text generation from prompts |
=AILIST() / =AILISTH() | AI Tokens | Vertical / horizontal list generation |
=AIIMAGE() | AI Tokens | Image generation from text prompts |
=GPTV() | AI Tokens | Image analysis with vision models |
=AISPEECH() | AI Tokens | Text-to-speech audio generation |
=AIVIDEO() | AI Tokens | Video generation from text prompts |
=AITRANSLATE() | AI Tokens | AI-powered translation |
=VISIT() | Scraping Credits | Full page content scraping |
=SERP() / =BULKSERP() | Scraping Credits | DuckDuckGo search results |
=GSEARCH() / =GNEWS() / =GMAPS() / =YTSEARCH() | Scraping Credits | Google and YouTube search results |
=GETSELECTOR() | Scraping Credits | CSS selector-based scraping |
=GETIMG() | Scraping Credits | Extract image URLs from a page |
=PAGEDATA() | Scraping Credits | Bulk page metadata extraction |
=GETMETATITLE() | Scraping Credits | Page meta title |
=GETMETADESCRIPTION() | Scraping Credits | Page meta description |
=GETH1() / =GETH2() | Scraping Credits | Page headings |
=GETHEADINGS() | Scraping Credits | All headings (H1-H6) |
=GETP() | Scraping Credits | All paragraph text |
=DOMAINCHECK() | Free | Domain availability check |
Putting both to work in a real workflow
The best SheetMagic workflows chain both types together. Here's one we use all the time for competitive content research:
Pull competitor URLs with SERP
Formula
=SERP("best ai tools for content marketing", 10)1 credit per search. Returns the top 10 results for your target keyword.
SERP spills the title, snippet and URL across three columns. Copy the 10 URLs into column A of a new tab for the next steps.
Scrape each competitor page
Formula
=VISIT(A2)Uses 1 scraping credit per URL on a basic page, 2 if it needs JavaScript rendering. Pulls the full text content of each competitor page.
Run this for all 10 URLs. Total cost: 10 scraping credits on basic pages, up to 20 if every page needs rendering.
Analyze each page with AI
Formula
=AITEXT("Summarize this page in 3 bullet points. What is the main argument? What audience is it targeting?", B2)Uses AI tokens. The count depends on how long the scraped content is, how long the AI response is, and the model.
Run it on the first page, check what it deducted in the dashboard, then multiply by 10. With Keep Formula on (the default), the formula stays in column C as text and the summary lands in column D, the cell to its right.
Generate your own content outline
Formula
=AILIST("Based on these competitor summaries, generate a 10-section outline for a blog post that covers gaps none of them address: " & D2 & D3 & D4 & D5)Uses AI tokens. One call that turns your competitor analysis into an actionable outline. Points at column D, where the summaries land with Keep Formula on; use column C if you turned it off.
Scraping total for the whole workflow: 11 credits on basic pages (1 search plus 10 page scrapes), up to 21 if every page needs rendering. On Solo's 10,000 credits, you could run it more than 450 times a month even if every page needs rendering. The AI side depends on your model, so use the first-row reading from step 3.
Checking your balance
Both balances are visible in the SheetMagic dashboard. You'll see:
- Your remaining allowance for the current billing cycle
- A usage breakdown by day and by formula type
- Your billing cycle dates so you know when the next reset is coming
- Your credit pack balances if you've bought any
Tip
Bookmark the dashboard. Before you run a 5,000-row =VISIT() scrape (at least 5,000 scraping credits, more if pages need rendering), take a quick look to make sure you've got the headroom.
The short version
| AI Tokens | Scraping Credits | |
|---|---|---|
| What it powers | AI generation (text, images, video, speech, vision) | Web data (page scraping, DuckDuckGo, Google and YouTube search, page data) |
| Cost model | Variable. Depends on prompt/response size and model | Per call. Set cost per function call and page type |
| Resets | Monthly, when your billing cycle starts | Monthly, when your billing cycle starts |
| Rolls over? | No | No |
| BYOK bypass | Yes. Unlimited with your own keys | No. Credits still apply, and BYOK adds 50% |
| Credit packs | Available for paid subscribers | Available for paid subscribers |
Two pools. Two meters. Both reset monthly. No usage charges on top of your plan. That's the whole system.
Note
Want to try it out? You can test the text and scraping formulas in this guide on the free tier. No credit card needed, no account needed to start. You get 20,000 AI tokens and 100 scraping credits. Install SheetMagic, click Activate, and see for yourself.
Text and scraping formulas run on the free allowance. Install from the Google Workspace Marketplace, no card, no expiry.
Install free for Google SheetsAbout the author
Phil NguyenPhil builds SheetMagic, the Google Sheets add-on that brings AI and web scraping into the spreadsheet, used by 6,300+ people. He writes these guides from the formulas he runs on his own sheets.
