The ReplyLabs library
Guides, use cases, and a working glossary for running AI, verification, enrichment, and enrichment from inside Google Sheets.
A fifth to a third of company URLs will not return data, and no vendor fixes that. Why coverage fails, what a realistic rate looks like, how to measure yours.
Per-row enrichment costs less than most people assume. The real spend is seats and rows you should never have processed. The arithmetic, worked through.
Running enrichment one step at a time wastes money on rows that already failed. How to chain steps in a spreadsheet so each one only sees rows that qualify.
Every method for running AI over a Google Sheet has a different ceiling: 350 cells, 30 seconds, 6 minutes, or your provider's rate limit. The real numbers.
Exceeded maximum execution time is a hard 6-minute ceiling on every plan. The real quota table, why custom functions get only 30 seconds, and the four fixes.
Imported content is empty means the fetch worked and your XPath matched nothing. Usually the tbody DevTools adds, or JavaScript. How to tell in 30 seconds.
The IMPORTXML could not fetch url error is a network failure, not a formula failure. Here is what Google's servers actually got back, and the fixes that work.
The AI function missing, greyed out, or returning nothing in Google Sheets? Every documented cause, how to tell them apart in a minute, and what fixes each one.
Follow-ups send to the same list four or five times, so they multiply whatever is already wrong with it. How many to send, how long to wait, what each one should say, and why an unverified list makes your reply rate meaningless.
Google Sheets generates only the first 350 cells when you use AI functions. Here is where that number comes from, what else caps you, and four ways past it.
Silence after 60 careful emails? It's an ICP problem, not a copy one. Score each row in plain English, then Gate out the non-fits before you send.
Reply-triage is cleanup. Score each row against your ICP before the send and a bad prospect costs a keystroke, not a wasted send and a reputation hit.
Your AI isn't the problem - your list is. Audit list freshness, email verification, and signal research before you blame the model for weak replies.
Run one AI prompt against every row of a column in Google Sheets, no scripts and no copy-paste. How it works, what it costs per row, and how to keep outputs tied to real data.
An objective 2026 guide to the best AI tools and add-ons for Google Sheets: what each does, who it suits, rough pricing, and one real limitation each.
Write an AI formula that runs a prompt over a column in Google Sheets, without Apps Script. The fastest method, why custom functions fail, and the cost.
Run a single AI prompt across thousands of Google Sheets rows at once. The fastest method, why in-cell formulas stall, how to keep cost predictable, and a worked example.
Use GPT and ChatGPT models in Google Sheets without writing Apps Script. The add-on method, why in-cell formulas stall at scale, what it costs, and a worked example.
Personalise outreach for thousands of rows with AI from a spreadsheet. The row-level prompt method, why it beats mail-merge tokens, and what it costs.
An AI prompt is the instruction you give a language model. In Google Sheets, it is the template applied to every row with column values substituted in.
A token is the unit a language model reads and writes text in. It is also the unit AI is billed in, which is why token count drives the cost of every AI run.
Verify an email list inside Google Sheets without exporting. How verification works, how catch-all and disposable addresses are handled, what it costs, and the steps.
A step-by-step guide to verifying an email list in Google Sheets: check deliverability, handle catch-all and disposable addresses, and cut your bounce rate.
How to reduce email bounce rate: clean and verify your list, fix authentication, warm your domain, and handle soft bounces. The exact steps to get under 2 percent.
Catch-all emails cannot be confirmed by a verifier, so they carry bounce risk. How to segment, send, and warm them safely in cold outreach without hurting your domain.
A catch-all (accept-all) email domain accepts mail for every address, even ones that do not exist. Why it cannot be verified normally and how to handle it.
Bounce rate is the share of sent emails a server refuses to deliver. Hard vs soft bounces, the formula, healthy thresholds, and why staying under 2 percent matters.
Email deliverability is whether your messages reach the inbox rather than spam. The factors that drive it, why bounce rate matters, and how verification helps.
IMPORTXML returns nothing on JavaScript-rendered pages and caps out around 50 calls. Here is why, what to use instead, the 6-minute Apps Script limit, the ethics, and a step-by-step for thousands of URLs.
Turn a column of website URLs into data in a spreadsheet without code. The three real methods, where each one breaks, what it costs, and a step-by-step that scales to thousands of URLs.
Collecting LinkedIn company data has real legal and ToS limits. What the hiQ ruling actually said, why public company data is the safer angle, and a compliant Enrich workflow.
IMPORTXML is free and fine for a few static pages, but it caps at ~50 calls and fails on JavaScript sites. Here is how it works, where it breaks, and when to switch.
URL enrichment turns a column of URLs into structured data by fetching each page and extracting the values you need. In Google Sheets, it is the Enrich step.
Rate limiting is when a server caps how many requests a client can make in a time window. In scraping, it triggers HTTP 429 errors and is handled with pacing and backoff.
Turn a Google Sheet into a clean, verified, personalised cold-email list. Deliverability fundamentals, ICP scoring, AI personalisation at scale, then export to your sender.
Personalised cold email at scale means writing a genuinely specific message for every prospect without writing each by hand. Here is how to do it in a spreadsheet.
A concrete 2026 cold email deliverability checklist: authentication, domains, volume limits, warm-up, list verification and the monitoring that catches problems early.
ICP scoring turns your ideal customer profile into a grade on every prospect, so you target best-fit accounts first. Here is how to score an outbound list in a spreadsheet.
An ideal customer profile (ICP) describes the companies most likely to buy, succeed and stay. It is the targeting blueprint that drives cold-email reply rates.
Spintax is a syntax for cold-email text variations: each recipient gets a randomly chosen version, so identical content stops looking like bulk mail to spam filters.
BYOK means running AI in Google Sheets on your own provider key at raw cost with zero markup. How it works, the pricing math, supported providers, and the security model.
BYOK bills AI at raw provider cost with no markup; managed adds a small margin but needs no key. Worked cost math, the break-even point, and when each wins.
An OpenRouter key reaches 300+ models across providers through one credential. How to bring it into Google Sheets with ReplyLabs and run AI at raw cost.
Estimate AI API cost from token counts and per-million rates, then scale to a full Sheets batch. Worked maths for input, output, managed markup, and BYOK.
BYOK means using your own AI provider API key in a tool, so model calls bill to your provider account at raw cost with no platform markup added.
An API key is a secret credential that authenticates and bills requests to a service. In BYOK tools, your provider key runs AI at raw cost on your account.
Lead enrichment in Google Sheets means filling in firmographics and contact data on a list using scraping and AI. How it works, waterfall logic, and the cost.
A Clay alternative for lead enrichment that lives in Google Sheets. An honest comparison of coverage, cost, and when Clay is still the right call.
Firmographic enrichment fills in company size, industry, revenue, and location on a lead list. What the fields mean, how accurate they are, and how to do it in Sheets.
Waterfall enrichment queries multiple data sources in sequence and keeps the first verified match. How it lifts coverage from ~50% to 80%+, and a Sheets version.
Firmographics are company-level attributes, employee count, industry, revenue, location, and ownership, used to segment and qualify B2B accounts. Definition and examples.
Waterfall enrichment queries multiple data sources in sequence for the same field and keeps the first verified match, lifting B2B coverage from ~50% to 80%+. Definition.