US EV Charger Area Monitor
Pricing
from $0.85 / 1,000 stations
US EV Charger Area Monitor
Monitors US EV charging stations by state, city, ZIP, network, pricing, connectors, and status. Export data, run via API, schedule and monitor runs, or integrate with other tools.
Pricing
from $0.85 / 1,000 stations
Rating
0.0
(0)
Developer
Trove Vault
Maintained by CommunityActor stats
1
Bookmarked
2
Total users
1
Monthly active users
3 days ago
Last modified
Share
Monitor EV charging stations by US state, city, or ZIP code. The actor returns station coverage, network, connector mix, public/private access type, access rules, visible pricing text, parsed price signals, and operational status fields from the Alternative Fuels Data Center station dataset.
Use it to build recurring EV charging coverage snapshots for fleet planning, charging app data QA, site host benchmarking, and regional infrastructure research. Schedule it daily, weekly, or before route reviews to see what charging options exist in an operating area and which records carry pricing, access, or reliability warnings.
Why Use This Actor?
Fleet and site teams rarely need a raw map pin dump. They need a repeatable area report that can be exported, compared, monitored, and joined with internal routing or site data.
| Need | Basic map search | US EV Charger Area Monitor |
|---|---|---|
| Area input | Manual map panning | State, city, or ZIP input |
| Repeatability | Hard to automate | Schedule as an Apify run |
| Pricing | Often hidden in UI | Exports public pricing text and parsed signals |
| Status | Visual only | Normalized status and warning fields |
| BI use | Manual copy | JSON, CSV, Excel, API |
| Monitoring | No run history | Append to datasets across runs |
Use Cases
Fleet route and depot planning
Find public charging stations in a state, city, or ZIP territory before assigning EV routes. Compare connector coverage, DC fast availability, access restrictions, and pricing visibility.
Charging reliability monitoring
Schedule recurring runs for target areas and track records marked as temporarily unavailable, restricted, stale, planned, or missing port counts. Use the output as an early warning layer for operational reviews.
Charging app data QA
Compare a charging app's local station coverage against public AFDC records. The actor gives stable station IDs, network labels, connector fields, and source timestamps for reconciliation.
Site host and network benchmarking
Monitor which charging networks appear in a region, what connector mix they expose, and whether pricing is visible enough for drivers and fleet planners.
Input
| Field | Type | Default | Description |
|---|---|---|---|
states | Array | required | One or more US state or territory abbreviations, such as CA, TX, NY, or FL |
city | String | optional | Narrow results to one city inside the selected state |
zipCodes | Array | optional | Narrow results to one or more ZIP codes |
maxStations | Number | 250 | Maximum station rows to return across the run |
includePlannedStations | Boolean | false | Include planned stations in addition to existing and temporarily unavailable stations |
accessTypes | Array | public | Include public stations, private stations, or both |
connectorTypes | Array | optional | Filter to connector types such as J1772, TESLA, J1772COMBO, or CHADEMO |
datasetId | String | optional | Existing Apify dataset ID to append results to |
runId | String | optional | Parent run ID copied into every output row |
Example city run:
{"states": ["CA"],"city": "Los Angeles","maxStations": 250,"accessTypes": ["public"],"includePlannedStations": false}
Example statewide DC fast run:
{"states": ["TX"],"connectorTypes": ["J1772COMBO", "TESLA"],"maxStations": 2000}
Output
The actor returns one row per station observation.
| Field | Description |
|---|---|
areaLabel | Requested area such as Los Angeles, CA or TX |
stationId | AFDC station identifier |
stationName | Public station name |
network | EV charging network when provided |
sourceUrl | AFDC station detail URL |
status | Normalized source status |
availabilitySignal | Operational signal derived from status and access |
pricingText | Visible public EV pricing text |
priceAmount | First parsed simple price amount when detected |
priceCurrency | Parsed or inferred currency |
priceUnit | Parsed unit such as kWh, hour, session, or parking |
pricingConfidence | missing, low, medium, or high |
address, city, state, zip | Location fields |
latitude, longitude | Station coordinates from the public record |
accessType | Normalized public or private value |
access, accessHours, restrictedAccess | Public access fields |
connectorTypes | Connector type list |
level1Ports, level2Ports, dcFastPorts, totalPorts | Port counts from public fields |
lastConfirmedAt, updatedAt, observedAt | Source and run timestamps |
warnings | Compact warnings for missing or ambiguous fields |
Example row:
{"areaLabel": "Los Angeles, CA","stationId": 1523,"stationName": "City Hall Garage","network": "ChargePoint Network","sourceUrl": "https://afdc.energy.gov/fuels/electricity-locations#/station/1523","status": "Available","availabilitySignal": "operational_public_record","pricingText": "$0.35 per kWh","priceAmount": 0.35,"priceCurrency": "USD","priceUnit": "kWh","pricingConfidence": "medium","city": "Los Angeles","state": "CA","zip": "90012","accessType": "public","connectorTypes": ["J1772COMBO"],"level2Ports": 0,"dcFastPorts": 4,"totalPorts": 4,"observedAt": "2026-05-31T10:00:00.000Z","warnings": []}
API
Run from scripts, scheduled jobs, or monitoring pipelines with your Apify API token.
curl -X POST "https://api.apify.com/v2/acts/trovevault~us-ev-charger-area-monitor/runs" \-H "Authorization: Bearer YOUR_APIFY_TOKEN" \-H "Content-Type: application/json" \-d '{"states":["CA"],"city":"Los Angeles","maxStations":250}'
import { ApifyClient } from 'apify-client';const client = new ApifyClient({ token: 'YOUR_APIFY_TOKEN' });const run = await client.actor('trovevault~us-ev-charger-area-monitor').call({states: ['CA'],city: 'Los Angeles',maxStations: 250,});const { items } = await client.dataset(run.defaultDatasetId).listItems();
Data Semantics
This actor reports station records observed during the run. It does not guarantee live plug-by-plug occupancy. Fields such as status, pricingText, accessType, lastConfirmedAt, and updatedAt come from AFDC station data. Use observedAt to compare runs over time.
Pricing is intentionally conservative. pricingText is the source text. priceAmount, priceCurrency, and priceUnit are parsed only when the text contains a simple recognizable pattern. Ambiguous pricing keeps the original text and adds a warning rather than pretending exact structure.
Troubleshooting
No stations returned
Check the state abbreviation, remove the city or ZIP filter, and raise maxStations.
Pricing is null
Many station records do not publish pricing. Use pricingText, pricingConfidence, and warnings to separate missing pricing from parsed pricing.
The status is not live occupancy The actor exposes public station status records, not real-time connector occupancy. Treat the output as an area monitoring and reliability signal, not a live navigation feed.
Too many rows
Lower maxStations, add a city, or add ZIP codes for depot-level monitoring.
Limitations
The v1 actor is US-first. It is built on public AFDC station data and does not claim worldwide coverage, private app-only data, or guaranteed real-time availability. Future versions can add network-specific adapters, route corridors, or global registry coverage when those sources provide reliable station-level fields.