TrueLocal Australia Business Leads Scraper avatar

TrueLocal Australia Business Leads Scraper

Pricing

from $17.00 / 1,000 results

Go to Apify Store
TrueLocal Australia Business Leads Scraper

TrueLocal Australia Business Leads Scraper

Scrape Australian business listings from TrueLocal: business name, phone, full address (street, suburb, state, postcode), category, website, rating and review count, and description. Search by business type and location. Export to JSON, CSV or Excel.

Pricing

from $17.00 / 1,000 results

Rating

0.0

(0)

Developer

Scrapers Lat

Scrapers Lat

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

2 days ago

Last modified

Share

TrueLocal Australia Business Leads Scraper

TrueLocal Australia Business Leads Scraper

Here is one real result, with every field the actor returns:

{
"name": "Local Plumbing Heroes",
"phone": "0481 233 933",
"addressStreet": "Serving Sydney, NSW",
"suburb": "Sydney, NSW",
"state": null,
"postcode": null,
"fullAddress": "Serving Sydney, NSW, Sydney, NSW",
"category": "Plumbers & Gasfitters",
"website": "https://www.localplumbingheroes.com.au",
"ratingValue": 3.7,
"reviewCount": 10,
"openingHours": ["Mo-Su"],
"slogan": null,
"description": "From Business: Check Us Out, We Are Rated Five Stars On Google.",
"yearsInBusiness": "36 Years",
"url": "https://www.truelocal.com.au/sydney-nsw/tlp/local-plumbing-heroes-580963135",
"searchQuery": "plumbers",
"location": "Sydney, NSW",
"source": "truelocal.com.au",
"observedAt": "2026-08-10T14:31:14.708Z",
"error": null
}

The most complete TrueLocal Australia business scraper available. It returns every lead field the listing exposes for each business, including phone, website, full address, rating and review count, and gives you keyword and location searches to target exactly the Australian business leads you need.

📥 Input · 📤 Output · 💰 Pricing · ▶️ Examples

Apify Coverage Output Billing

Table of contents

What it does

The actor searches TrueLocal (the Australian business directory) for each business type you pass, in each location you pass, paginates through the matching listings, and writes one normalized record per business to the run's dataset. Each record carries the business name, phone, full address broken into street, suburb, state and postcode, category, website, rating and review count, opening hours, description and years in business.

TrueLocal is fronted by a managed challenge; the actor clears it through a hosted solver and stays HTTP-only. Missing source values are returned as null; nothing is invented. Some listings are service-area businesses without a fixed street address, in which case addressStreet reflects the service area and state/postcode may be null.

Quickstart

Open the actor, paste this into the input, and press Run. It returns up to 10 plumbers in Sydney.

{
"searchQueries": ["plumbers"],
"locations": ["Sydney, NSW"],
"maxBusinesses": 10
}

Leave locations empty to search all of Australia. Each keyword is searched in every location. Every input field is optional.

Input reference

FieldTypeRequiredDefaultDescription
searchQueriesstring[]no["plumbers"]Business types or keywords, for example plumbers, dentists, cafes. One run searches every keyword.
locationsstring[]no["Sydney, NSW"]Australian locations as suburb and state, for example Sydney, NSW, Melbourne, VIC, or just a suburb. Empty searches all of Australia.
maxBusinessesintegerno10Maximum businesses to collect across all searches. Free plans are capped at 10.

Output reference

One dataset item per business. Types: string, number, integer, string[], or null when the source value is absent.

FieldTypeDescription
namestringBusiness name.
phonestringPhone number.
addressStreetstringStreet address, or the service area for service-area businesses.
suburbstringSuburb.
statestringState, or null when not shown.
postcodestringPostcode, or null when not shown.
fullAddressstringFull address as one line.
categorystringBusiness category.
websitestringBusiness website, or null.
ratingValuenumberAverage rating, or null.
reviewCountintegerNumber of reviews, or null.
openingHoursstring[]Opening hours entries, when shown.
sloganstringBusiness slogan / tagline, or null.
descriptionstringBusiness description, or null.
yearsInBusinessstringYears the business has been operating, when shown.
urlstringListing URL.
searchQuerystringSearch keyword that produced this record.
locationstringSearch location used.
sourcestringAlways truelocal.com.au.
observedAtstringISO 8601 timestamp of when the record was collected.
errorstringnull on success. On a failed run, a single item with a populated error field is written instead.

Example output record

Real record from a live run (input {"searchQueries":["plumbers"],"locations":["Sydney, NSW"],"maxBusinesses":10}):

{
"name": "Local Plumbing Heroes",
"phone": "0481 233 933",
"addressStreet": "Serving Sydney, NSW",
"suburb": "Sydney, NSW",
"state": null,
"postcode": null,
"fullAddress": "Serving Sydney, NSW, Sydney, NSW",
"category": "Plumbers & Gasfitters",
"website": "https://www.localplumbingheroes.com.au",
"ratingValue": 3.7,
"reviewCount": 10,
"openingHours": ["Mo-Su"],
"slogan": null,
"description": "From Business: Check Us Out, We Are Rated Five Stars On Google.",
"yearsInBusiness": "36 Years",
"url": "https://www.truelocal.com.au/sydney-nsw/tlp/local-plumbing-heroes-580963135",
"searchQuery": "plumbers",
"location": "Sydney, NSW",
"source": "truelocal.com.au",
"observedAt": "2026-08-10T14:31:14.708Z",
"error": null
}

Run via API and CLI

Start a run and wait for it to finish, then read the dataset. Replace <TOKEN> with your Apify API token.

Run synchronously and get dataset items in one call:

curl -X POST "https://api.apify.com/v2/acts/scrapers_lat~truelocal-australia-scraper/run-sync-get-dataset-items?token=<TOKEN>" \
-H "Content-Type: application/json" \
-d '{"searchQueries":["plumbers"],"locations":["Sydney, NSW"],"maxBusinesses":25}'

Start a run asynchronously:

curl -X POST "https://api.apify.com/v2/acts/scrapers_lat~truelocal-australia-scraper/runs?token=<TOKEN>" \
-H "Content-Type: application/json" \
-d '{"searchQueries":["dentists","cafes"],"locations":["Melbourne, VIC"],"maxBusinesses":100}'

Apify CLI:

apify call scrapers_lat/truelocal-australia-scraper \
--input '{"searchQueries":["plumbers"],"maxBusinesses":10}'

Fetch results

Every run writes to a dataset. Fetch items as JSON, CSV, or Excel by changing format:

# JSON
curl "https://api.apify.com/v2/datasets/<DATASET_ID>/items?token=<TOKEN>&clean=true&format=json"
# CSV
curl "https://api.apify.com/v2/datasets/<DATASET_ID>/items?token=<TOKEN>&clean=true&format=csv"
# Paginate large datasets
curl "https://api.apify.com/v2/datasets/<DATASET_ID>/items?token=<TOKEN>&offset=1000&limit=1000"

<DATASET_ID> is returned as defaultDatasetId in the run object. Use offset and limit to page through large result sets. clean=true drops empty and internal fields.

Billing and limits

  • Pay per result. You are charged per business returned (result event). See the pricing tab for the current per-result price.
  • No charge on failure. If a run errors, the actor writes a single item with a populated error field and does not charge for it. Empty runs cost nothing.
  • Spend cap respected. Set maxTotalChargeUsd on the run; once reached, the actor stops emitting and charging further billable results.
  • Free Apify plans are capped at 10 businesses per run. Upgrade for higher maxBusinesses.

FAQ and troubleshooting

A run returned 0 records. Why? The keyword and location combination matched no listings. Try a broader keyword or a larger location (a capital city rather than a small suburb). Zero-result runs are not charged.

Do I get the business phone and website? Yes, when TrueLocal shows them. Phone is present on most listings; website is present on many.

Why are state and postcode sometimes null? Service-area businesses (mobile trades) list a service area rather than a fixed street address, so state and postcode may be absent. The actor returns null rather than guessing.

Can I search several business types and cities at once? Yes. Pass multiple searchQueries and multiple locations; each keyword is searched in each location up to maxBusinesses.

Is this an official TrueLocal tool? No. This actor is independent and has no affiliation with TrueLocal. It reads only data that is publicly visible on listing pages. All trademarks belong to their owners.

More scrapers at scrapers.lat

Built and maintained by scrapers.lat, where we publish scrapers for US and Latin American public platforms: company registries, government data, finance, e-commerce and more. Browse the catalog or request a custom scraper at scrapers.lat.


Independent tool, not affiliated with TrueLocal. Accesses only publicly available business listing data. All trademarks belong to their owners.