How to Scrape Emails and Phone Numbers in Bulk from Any Website Using Google Sheets (100% Free & Working 2025 Method)


Lead generation is one of the most time-consuming tasks for marketers, salespeople, recruiters, real estate agents, and business owners. What if you could extract every visible email address and phone number from hundreds or even thousands of websites — completely automatically and for free?

This powerful method uses only Google Sheets + Google Apps Script (no paid tools, no Chrome extensions with daily limits, no Python or server required). In just a few minutes, you can turn a simple list of URLs into a clean, organized spreadsheet filled with real contact details.

This guide is 100% beginner-friendly, fully u


Prepare Your Google Sheet with the Correct Structure

  1. Open a new Google Sheet: https://sheets.new

  2. In Row 1, create exactly these four headers:

    • A1: URL

    • B1: Emails

    • C1: Phone Numbers

    • D1: Status

This layout is mandatory — the script reads and writes data based on these exact columns.

  • Column A = where you paste all your target websites

  • Column B = will be automatically filled with found emails (comma-separated)

  • Column C = all detected phone numbers (cleaned and unique)

  • Column D = live status update (Success, No email found, Error, etc.)

Pro tip: Freeze the first row (View → Freeze → 1 row) so headers stay visible while scrolling.


Paste Hundreds or Thousands of URLs in Bulk

Starting from cell A2, paste as many URLs as you need:

You can collect URLs from:

  • Google search results (SERP)

  • Business directories (Yellow Pages, Yelp, etc.)

  • LinkedIn company pages

  • Industry-specific lists

  • Your competitors’ backlink profiles

The script handles 500–2000 URLs easily on a free Google account.


Open Google Apps Script Editor

Inside your Google Sheet, go to:

Extensions → Apps Script

A new tab will open with the Apps Script code editor. Delete everything that’s already there (the default myFunction() code).

You’ll paste the full working script here in the final step.


Save Your Project & Get Ready to Run

Give your project a name (top left) — for example: “Bulk Email & Phone Scraper 2025”.

The actual script is long, tested, and updated for 2025 (it handles redirects, timeouts, international phone formats, duplicate removal, and is respectful with delays).

Important: The complete, ready-to-copy code is provided at the very end of this article as a downloadable .gs file and also in plain text so you can copy-paste directly.

After Pasting the Code – Save It Properly

Once you have pasted the complete code into the Apps Script editor, do not close the tab yet. Look at the top-left corner of the Apps Script window and click the blue button that says **"Save project"** (or simply press **Ctrl + S**). A small pop-up will appear asking for a project name – type **"Bulk Email & Phone Scraper 2025"** and click **Save**. Alternatively, if you see an option that says **"Save to Drive"** or **"Save project to Drive"**, click that as well – this ensures the script is permanently saved to your Google Drive and linked to your current Google Sheet. After saving, you will notice the project name now appears at the top. Your script is now safely stored and ready to run anytime!

Paste the Full Working Code

  1. In the Apps Script editor, delete any default code that appears.
  2. Click the link provided below, open the Google Docs file, select all the code (Ctrl + A), and copy it (Ctrl + C).
  3. Return to the Apps Script editor and paste the complete code (Ctrl + V).
  4. Click the save icon (or press Ctrl + S) and name your project “Bulk Email & Phone Scraper 2025”.

Step 5: Grant Permissions and Link Your Gmail

After running the script for the first time, Google will ask for permission to continue. This is necessary because the script needs access to read your sheet and fetch data from external websites. Click Review Permissions, choose your Gmail account, and then open Advanced to continue. Select Continue Anyway, and finally click Allow. Once permissions are granted, your Gmail account gets linked to the script, and the scraping function becomes fully active.


Run the Script for the First Time (Handle Google Permissions Correctly)

  1. Click the blue Run button in Apps Script

  2. Google will show a permission request screen

  3. Click “Advanced” at the bottom left

  4. Click “Go to Bulk Email & Phone Scraper 2025 (unsafe)”

  5. Allow all requested permissions (View and manage spreadsheets, Connect to external services)

This only happens the first time. After authorization, you’ll never see these screens again.


Watch the Magic Happen Automatically

Once authorized, the script will:

  • Visit each URL one by one

  • Scan the entire page source (including footer, contact page, about us, etc.)

  • Extract every visible email and phone number

  • Clean and deduplicate them

  • Write results instantly back to your sheet

  • Update the Status column so you can see live progress

Average speed (free account):

  • 100 URLs ≈ 3–6 minutes

  • 500 URLs ≈ 15–25 minutes

  • 1000 URLs ≈ 45–60 minutes

The script includes a polite 1-second delay between requests to stay under the radar and respect website servers.

Run It Anytime with One Click (Add a Custom Menu – Optional but Recommended)

You can add a tiny piece of extra code (included in the download) that creates a custom menu directly inside your Google Sheet.

After adding it, every time you open the sheet you’ll see:


Final Result – Your Professional Lead Sheet

[Image Placeholder 8 – Completed sheet with hundreds of clean emails and phone numbers ready for CRM import]

You’ll have a perfectly organized Google Sheet that you can:

  • Export to CSV/Excel

  • Share with your sales team

Download the Complete 2025 Working Code Here

The full, tested, and commented script (including custom menu + error handling + international phone support) is available below:

Direct Download Link (right-click → Save As):

https://docs.google.com/document/d/1jSwggsFuU1k8CJlcLgXlLSB0RjUE8G0hGuflA5XCn50/edit?usp=sharing

Or copy-paste the plain text version provided at the very end of this article.

Just paste it into Apps Script, save, authorize once, and you’re ready to extract unlimited leads — completely free.

Start building your high-quality lead lists today. This method is still working perfectly in 2025 and will save you thousands of dollars compared to paid scraping tools.



Post a Comment

0 Comments