# Compare Telstra, Optus and TPG coverage at outback campsites

**Use case:** 

Grades eight remote NSW, SA and QLD spots (Pilliga, Lightning Ridge, Menindee, Broken Hill, Tibooburra, Wilpena Pound, Birdsville…) on all four footprints: Telstra retail, Telstra wholesale (Aldi, Belong, Woolworths), Optus and TPG/Vodafone. One row per point with 4G and 5G grades and TPG dBm, plus a summary of where the MVNO footprint is graded lower than Telstra retail.

## Input

```json
{
  "points": [
    {
      "id": "pilliga",
      "lat": -30.6135,
      "lng": 149.5766
    },
    {
      "id": "coonabarabran",
      "lat": -31.275,
      "lng": 149.278
    },
    {
      "id": "lightning-ridge",
      "lat": -29.4267,
      "lng": 147.9788
    },
    {
      "id": "menindee",
      "lat": -32.393,
      "lng": 142.418
    },
    {
      "id": "broken-hill",
      "lat": -31.956,
      "lng": 141.467
    },
    {
      "id": "tibooburra",
      "lat": -29.4342,
      "lng": 142.0086
    },
    {
      "id": "wilpena-pound",
      "lat": -31.5286,
      "lng": 138.599
    },
    {
      "id": "birdsville",
      "lat": -25.899,
      "lng": 139.352
    }
  ],
  "profile": "car",
  "polylinePrecision": 5,
  "stepKm": 5,
  "carriers": [
    "telstra",
    "telstra_wholesale",
    "optus",
    "tpg"
  ],
  "concurrency": 4
}
```

## Output

```json
{
  "input.id": {
    "label": "ID",
    "format": "string"
  },
  "input.kind": {
    "label": "Kind",
    "format": "string"
  },
  "point.routeKm": {
    "label": "Route km",
    "format": "number"
  },
  "point.lat": {
    "label": "Lat",
    "format": "number"
  },
  "point.lng": {
    "label": "Lng",
    "format": "number"
  },
  "status": {
    "label": "Status",
    "format": "string"
  },
  "carriers.telstra.data.4G": {
    "label": "Telstra 4G",
    "format": "string"
  },
  "carriers.telstra.data.5G": {
    "label": "Telstra 5G",
    "format": "string"
  },
  "carriers.optus.data.4G": {
    "label": "Optus 4G",
    "format": "string"
  },
  "carriers.optus.data.5G": {
    "label": "Optus 5G",
    "format": "string"
  },
  "carriers.tpg.data.4G": {
    "label": "TPG 4G",
    "format": "string"
  },
  "carriers.tpg.data.5G": {
    "label": "TPG 5G",
    "format": "string"
  },
  "best.4G.grade": {
    "label": "Best 4G",
    "format": "string"
  },
  "best.5G.grade": {
    "label": "Best 5G",
    "format": "string"
  }
}
```

## About this Actor

This example demonstrates how to use [AU Mobile Coverage — phone signal: Telstra, Optus, Vodafone/TPG](https://apify.com/davidar/au-mobile-coverage.md) with a specific input configuration. Visit the [Actor detail page](https://apify.com/davidar/au-mobile-coverage.md) to learn more, explore other use cases, and run it yourself.


## How to integrate an Actor?

This Task's input is already configured above. Use it as-is rather than inventing a new one.

Do not guess an integration path. Every one of them is in the agent quickstart at https://apify.com/agents.md: the Apify MCP server, Agent Skills with the Apify CLI, the JavaScript and Python clients, the REST API, and the account-free path for an agent with no human to sign in. It also carries the rule on stating cost before the first paid run.

For full API examples (JavaScript, Python, CLI, MCP, OpenAPI), see this Task's Actor page: https://apify.com/davidar/au-mobile-coverage.md

Each client library has reference documentation the quickstart does not restate: [JavaScript/TypeScript](https://docs.apify.com/api/client/js/docs.md) (`npm install apify-client`) and [Python](https://docs.apify.com/api/client/python/docs.md) (`pip install apify-client`).
