How website scraping feeds personalization

Tantra reads a text snapshot of each contact's public website to personalize outreach. See how targets are chosen and when it is skipped.

intermediate5 min readUpdated Sat Jul 25 2026 00:00:00 GMT+0000 (Coordinated Universal Time)

Open in Tantra

These open the app in a new tab. You may be asked to sign in.

Overview

To personalize a message, Tantra needs something to say about the recipient. It gets that by fetching a text snapshot of the recipient's public website. That snapshot is then given to the AI along with your template. This article explains where Tantra looks, when it skips a contact, and how the snapshot is used.

Scraping only runs when you turn on AI personalization. If personalization is off, Tantra reads no websites.

How it works

When personalization runs for a contact, Tantra decides which website to read, fetches a text snapshot of that page, and passes the text to the AI. The snapshot is plain text, not a live browser session. Only a portion of the text is used in the AI prompt. Tantra uses up to the first 2000 characters, which is enough to capture what a company does without overwhelming the model.

Tantra also reuses snapshots so it does not read the same site repeatedly. A site read for one contact can serve another contact on the same domain, which keeps campaigns fast.

How Tantra chooses which site to read

Tantra picks the target in this order.

  1. If the contact has a website on record, Tantra uses that.
  2. If not, Tantra derives one from the contact's business email domain. For example, a contact at jane@acme.com yields acme.com.
  3. If the contact only has a personal webmail address, Tantra reads nothing for that contact.

Personal webmail domains, such as Gmail, Yahoo, Outlook, iCloud, and similar consumer providers, are treated as not having a business website. Reading them would produce noise like login pages, so Tantra skips them and uses your plain template for those contacts.

What gets skipped or falls back to the template

Personalization uses your template, with no website reference, when any of these apply.

  • The contact is on personal webmail, so no business site can be derived.
  • The contact has neither a website nor a business email domain.
  • The website cannot be fetched or the snapshot fails.

In all of these cases the recipient still receives your template copy with merge fields resolved. Nothing is blocked.

Before you start

  • Turn on AI personalization for the step or campaign. See AI personalization for email and calendar.
  • Fill in the website field for contacts where you know the exact site, so Tantra does not have to guess from the email domain.
  • Expect personal webmail contacts to receive the template rather than personalized copy.

What happens next

Scraping is asynchronous and happens in the background as Tantra prepares each message. For cold email, a contact's site is read shortly before that step is due. For calendar campaigns, sites are read as the campaign processes its batches.

Because reading a site and calling the model take time, personalization does not appear instantly in the app. To preview the result for a specific contact before launch, use Test against a contact on an AI email step. See AI personalization for email and calendar.

Best practices

  • Add a real website to contacts when you have it. An explicit site is more reliable than one derived from the email domain.
  • Keep your template strong, since it is the fallback whenever a snapshot is missing.
  • Do not expect personalization for lists made mostly of personal webmail addresses.
  • Preview a few contacts before a large send to confirm the snapshots produce useful copy.

Common mistakes

  • Assuming every contact gets a website read. Personal webmail contacts are skipped by design.
  • Leaving the website field blank when the email domain is a generic parent domain that does not describe the prospect.
  • Treating the snapshot as a full crawl. Only a portion of one page's text is used.

Troubleshooting

SymptomCauseFix
A contact received the plain templateNo website or business domain, or the snapshot failedThis is the intended fallback. Add a website to that contact if you want it personalized
Personalized copy ignores the companyThe snapshot had little useful company textThe AI avoids inventing facts. Provide a better website URL
Personal webmail contacts are never personalizedThose domains are skipped on purposeUse a business email or add a website field for them
Personalization seems to use old website textTantra reuses recent snapshots to stay fastWait for the reuse window to pass, or update the contact's website

FAQ

Does Tantra read every contact's website?

Only when personalization is on, and only for contacts with a business website or a business email domain. Personal webmail contacts are skipped.

How does Tantra find a website if I did not enter one?

It derives one from the contact's business email domain, for example acme.com from jane@acme.com.

How much of the page does the AI see?

Up to the first 2000 characters of the text snapshot are used in the prompt.

What if the website cannot be read?

Tantra falls back to your template for that contact. The send still happens.

Why are personal webmail contacts skipped?

Their addresses do not point to a business website. Reading them would add noise, so Tantra uses your template instead.

Can I preview what the snapshot produces?

Yes. Use Test against a contact on an AI email step to see the personalized result.

Was this article helpful?

Related articles