← Back to Blog

How to Use Excel to Scrape Website Data

Learn how to leverage Excel for crawling websites to extract valuable data without needing advanced programming skills - with Australian business use cases.

James Xu, CA

Introduction

Excel is a versatile tool that goes beyond spreadsheets and calculations. With the right techniques, you can use Excel to scrape and crawl website data, making it a powerful resource for analysts and researchers - without writing a single line of code.

For Australian businesses, web scraping with Excel is particularly useful for competitor pricing analysis, monitoring supplier catalogues, pulling ABS economic data, and tracking ATO rate changes. This guide walks through the steps to extract data from websites using Excel's built-in features.


Why Use Excel for Web Scraping?

Excel is widely accessible and user-friendly, making it an excellent choice for extracting data from websites without requiring advanced technical skills:

  • No Coding Required: Use built-in features like Power Query to scrape data
  • Familiar Interface: Leverage Excel's intuitive design for data manipulation
  • Cost-Effective: Avoid expensive software or tools - you already have Excel
  • Integration: Easily combine scraped data with other Excel analyses and models
  • Scheduling: Refresh data automatically without manual re-imports

Step-by-Step Guide to Web Scraping with Excel

Step 1: Identify the Data Source

Before scraping, identify the website and the specific data you want to extract. Check the website's robots.txt file and terms of service to ensure scraping is permitted.

For Australian data sources, some excellent starting points:

  • ABS (abs.gov.au): Economic indicators, CPI, employment, population data
  • ATO (ato.gov.au): Tax rates, superannuation thresholds, foreign exchange rates
  • ASIC (asic.gov.au): Business registrations, company searches
  • RBA (rba.gov.au): Cash rate history, exchange rates, financial aggregates
  • data.gov.au: Thousands of government datasets in structured formats

Step 2: Use Excel's Power Query

Power Query is Excel's built-in tool for data extraction (available in Excel 2016+ and Microsoft 365):

  1. Go to Data > Get Data > From Web
  2. Enter the URL of the website you want to scrape
  3. Power Query loads the webpage and displays its navigator - showing all tables and structured elements found on the page
  4. Preview each table to find the data you need
  5. Select the table or section and click Load to import into Excel

Pro tip: For pages with multiple tables, Power Query lists them all in the navigator pane. Name them clearly as you import to avoid confusion later.

Step 3: Clean and Organise the Data

Once imported, use Excel's tools to clean and organise:

  • Remove unnecessary columns or rows
  • Use Text to Columns to split concatenated data
  • Apply filters and sorting to focus on relevant information
  • Use =TRIM() and =CLEAN() to remove whitespace and non-printable characters common in web data
  • Set data types explicitly (dates from web pages often import as text)

Step 4: Combine Multiple Sources

For competitive analysis, you'll likely need data from multiple websites:

  1. Create a separate Power Query for each source
  2. Use Merge Queries to join data on a common field (e.g., product name or SKU)
  3. Add calculated columns: =Price_CompetitorA - Price_Own to show price differences
  4. Add conditional formatting to flag products where you're priced above competitors

Step 5: Automate the Process

To scrape data regularly, set up a refresh schedule in Power Query:

  1. Go to Data > Queries & Connections
  2. Right-click your query and select Properties
  3. Under Usage, set refresh frequency: every 60 minutes, daily at a specific time, or refresh when the file opens

Practical Applications for Australian Businesses

SEO Competitor Analysis

Scrape competitor websites to analyse their content, keywords, and headings. For Australian businesses, track:

  • Which keywords competitors are targeting in meta titles and H1s
  • Pricing pages and service offerings
  • Blog content frequency and topics

Import the data into Excel for structured comparison. Track changes monthly to identify new competitor strategies.

Price Monitoring for Australian Retail

Extract product prices from e-commerce websites (including Australian retailers like Woolworths, Bunnings, or Officeworks). Set up the Power Query to refresh daily and use conditional formatting to highlight price changes. Compare against your own pricing to identify margin opportunities or competitive threats.

Financial Data Collection

Pull exchange rates from the RBA, stock prices from the ASX, or ABS economic indicators into Excel. Combine with your financial models for live data feeds. This is particularly useful for:

  • Currency hedging decisions (import/export businesses)
  • Budget forecasting linked to CPI
  • Wage price index data for salary benchmarking

ATO Rate Tracking

Scrape the ATO's tax rate pages to automatically pull in:

  • Individual tax brackets and thresholds
  • FBT rates and car parking thresholds
  • Superannuation guarantee percentages
  • Travel allowance and overtime meal allowance rates

Update once per quarter by refreshing the data connection.


Worked Example: Monitoring Competitor Pricing for an Australian Retailer

Consider an Australian retailer wanting to track prices from three competitor websites for 50 products.

The Setup:

  1. Create a Power Query for each competitor's category page that lists the products
  2. Extract: product name, price, availability, and any discount/sale indicators
  3. Merge all three into a single comparison table

The Table:

ProductOur PriceComp AComp BComp CMin CompetitorDeltaAction
Widget A$49.00$52.00$47.00$55.00$47.00+$2.00Review margin
Widget B$89.00$89.00$92.00$85.00$85.00+$4.00Price match?
Widget C$129.00$139.00$145.00$150.00$139.00-$10.00Hold price

Formulas used:

  • Min Competitor: =MIN([@CompA], [@CompB], [@CompC])
  • Delta: =[@OurPrice] - [@MinCompetitor] (positive = we're above cheapest)
  • Action flag: =IF([@Delta] > 5, "Review margin", IF([@Delta] < -10, "Hold", "Monitor"))

Result: A live dashboard refreshed weekly showing competitive positioning. The retailer identifies 8 products where they're priced more than $10 above the cheapest competitor - prompting a pricing review on those items.

Note: Always comply with website terms of service. The above is illustrative - actual implementation depends on website structure and data volume.


Limitations of Excel Web Scraping

  • Dynamic websites: Excel struggles with sites that rely heavily on JavaScript to render content. If you see a loading spinner instead of data, your target site is likely JS-rendered.
  • Large data sets: Power Query is efficient up to roughly 50,000 rows; above that, consider Python or a database.
  • Legal concerns: Always comply with website terms of service and data privacy laws. The Australian Privacy Act requires care if scraping personal information.
  • Authentication: Power Query has limited support for sites requiring login. For authenticated scraping, use Python with session management.
  • Rate limiting: Some websites block repeated requests. Set refresh intervals to at least 1 hour to avoid being blocked.

Frequently Asked Questions

Can Excel scrape data from any website?

Excel works best with static websites that have structured data (e.g., HTML tables). It may struggle with dynamic JavaScript-heavy websites. For those, consider using Power Query's Web connector with API endpoints where available.

Is web scraping with Excel legal?

Web scraping is legal as long as you comply with the website's terms of service and data privacy laws. Always check the robots.txt file and website policies. For Australian businesses, the Privacy Act 1988 applies if you're collecting personal information.

Do I need programming skills to scrape data with Excel?

No, Excel's Power Query allows scraping without coding. Basic Excel skills are helpful for cleaning and organising the data. For complex scraping, Python with BeautifulSoup is a natural next step.

Can I automate web scraping in Excel?

Yes, set up automatic data refreshes in Power Query to scrape and update data at regular intervals - daily, hourly, or on file open. This turns your spreadsheet into a live data dashboard.

What are the alternatives to Excel for web scraping?

For advanced scraping, consider Python (BeautifulSoup, Scrapy), R, or dedicated tools like Octoparse or ParseHub. Excel is best for simple, structured data scraping where you need results in a spreadsheet format.

Can Excel scrape Australian government data portals?

Yes. Many Australian government websites (ABS, ATO, ASIC, data.gov.au) publish structured tables and CSV downloads that Excel's Power Query can pull directly. The ABS Census data and ATO tax statistics tables are common use cases.

How do I handle websites that require login for scraping?

Power Query's Web connector has limited support for authenticated sessions. For sites requiring login, consider using Python requests with session cookies, or save the page as HTML first and import the local file into Excel.


Conclusion

Excel is a powerful and accessible tool for web scraping, especially for those who need quick results without coding. By leveraging Power Query and Excel's data manipulation features, you can extract valuable insights from websites - from competitor pricing and financial data to government statistics and market research.

For more advanced scraping needs (JavaScript-heavy sites, authenticated sessions, large-scale data extraction), Python remains the better tool. But for the 80% of use cases that involve static, structured data from public websites, Excel's Power Query is all you need.