FCC ASR Towers Scraper
Pricing
Pay per event
FCC ASR Towers Scraper
🗼 Export official FCC tower registrations with coordinates, heights, FAA studies, lighting, status, and owner contacts for telecom and GIS workflows.
Pricing
Pay per event
Rating
0.0
(0)
Developer
Stas Persiianenko
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
3 days ago
Last modified
Categories
Share
Export the official US Federal Communications Commission Antenna Structure Registration inventory as clean, joined, analysis-ready records.
FCC ASR Towers Scraper downloads the FCC complete archive—or a dated verified snapshot when the live archive is unavailable—and combines registration, coordinate, and owner tables for you.
Filter tower records by state, exact ASR number, status, owner, height, issue date, or geographic bounding box.
Get JSON, CSV, Excel, XML, RSS, or Parquet through Apify datasets without maintaining a 166 MB data-processing pipeline.
What does FCC ASR Towers Scraper do?
The Actor turns the FCC's pipe-delimited ASR bulk files into one record per antenna structure registration.
Each result can include:
- 🗼 FCC ASR registration and application identifiers
- 📍 address, state, county FIPS, latitude, and longitude
- 📏 structure, ground elevation, and overall height values
- ✈️ FAA determination date, study number, and circular
- 💡 structure type plus painting and lighting codes
- 🏢 registered owner name, contact details, and mailing address
- 🕒 FCC archive and scrape provenance
The source is official FCC registration data, either from the live weekly complete archive or the dated verified fallback described below—not a reseller or crowdsourced tower map.
Who is this FCC tower data for?
Telecom engineers can create inventories for network planning, co-location analysis, and field validation.
Site-acquisition teams can identify registered structures in target states or map extents before outreach.
Tower owners and brokers can monitor portfolios, research competing sites, and export owner-focused lists.
FCC and aviation consultants can review status, dimensions, FAA studies, and lighting metadata together.
Infrastructure investors can compare geographic concentrations and ownership patterns.
GIS analysts receive decimal coordinates and flattened fields ready for spatial tools.
Why use this Actor?
The FCC archive is free, but using it directly requires a weekly ZIP download, multiple table parsers, joins, field normalization, output limits, and export plumbing.
This Actor provides:
- ✅ a repeatable cloud workflow
- ✅ joined RA, EN, and CO records
- ✅ filters applied before dataset output
- ✅ bounded
maxItemscosts - ✅ typed numbers and ISO dates
- ✅ direct API and scheduler access
- ✅ no browser, proxy, account, or API key requirement
What FCC tower data can I extract?
| Group | Example fields |
|---|---|
| Identity | registrationNumber, fileNumber, uniqueSystemIdentifier |
| Status | statusCode, statusLabel, application purpose |
| Dates | entered, received, issued, constructed, dismantled, action |
| Site | street, city, state, county FIPS, ZIP |
| Geography | latitude, longitude, coordinate type |
| Dimensions | structure height, ground elevation, AGL and AMSL height |
| FAA | determination date, study number, circular number |
| Marking | structure type, painting and lighting codes |
| Owner | name, phone, email, address, city, state, ZIP, attention |
| Provenance | source URL, archive date, scrape timestamp |
Optional source values are omitted when the FCC row does not provide them.
How to scrape FCC antenna tower registrations
- Open the Actor input page.
- Enter one or more two-letter tower state codes, or remove the default for nationwide results.
- Add optional owner, status, height, date, registration, or map-boundary filters.
- Set a practical maximum number of tower records.
- Click Start.
- Review results in the Dataset tab.
- Export JSON, CSV, Excel, XML, RSS, or Parquet.
A first run with TX and 25 records is intentionally small and useful.
Input parameters
Tower location filters
states accepts two-letter US state and territory codes such as TX, CA, AK, or PR.
registrationNumbers accepts exact FCC ASR registration numbers for targeted lookup workflows.
boundingBox accepts decimal-degree minimum and maximum latitude and longitude values.
Registration filters
statusCodes accepts one-letter FCC status codes. Common values include A for Active, C for Cancelled, D for Dismantled, and T for Terminated.
ownerName performs a case-insensitive substring match against the joined owner name.
minOverallHeightMeters and maxOverallHeightMeters constrain overall height above ground.
issuedFrom and issuedTo are inclusive dates in YYYY-MM-DD format.
Output limit
maxItems controls how many matching tower records are saved, from 1 to 100,000.
The full FCC archive is still scanned so filters are accurate.
Example input: state tower inventory
{"states": ["TX"],"statusCodes": ["A"],"minOverallHeightMeters": 60,"maxItems": 250}
This request exports up to 250 active Texas registrations at least 60 meters tall.
Example input: geographic bounding box
{"boundingBox": {"minLatitude": 32.5,"maxLatitude": 33.2,"minLongitude": -97.6,"maxLongitude": -96.5},"maxItems": 500}
Coordinates missing from the FCC source fail the geographic filter closed.
Example output
{"registrationNumber": "1000019","fileNumber": "A0000039","uniqueSystemIdentifier": 96973,"statusCode": "T","statusLabel": "Terminated","structureAddress": "705 OAKWOOD","structureCity": "RAVENNA","structureState": "OH","countyFips": "39133","structureZipCode": "44266","heightOfStructureMeters": 86.8,"overallHeightAboveGroundMeters": 91.1,"structureTypeCode": "TOWER","faaStudyNumber": "96-AGL-1905-OE","ownerName": "GTE MOBILNET OF OHIO LIMITED PARTNERSHIP","sourceUrl": "https://data.fcc.gov/download/pub/uls/complete/r_tower.zip"}
Actual optional fields vary by FCC registration.
How much does it cost to scrape FCC tower data?
The Actor uses pay-per-event pricing: one small start charge for downloading and joining the weekly archive, plus a charge for each tower record saved.
The input limit makes the maximum output charge predictable.
Apify's Free plan includes monthly platform credits, so small lookup and sample runs may fit within those credits.
See the live pricing panel for current tier-specific prices before starting a large export.
Data freshness and official source
The Actor first requests the live FCC complete archive:
https://data.fcc.gov/download/pub/uls/complete/r_tower.zip
The FCC normally refreshes this archive weekly. If the live archive is unavailable or blocked, the Actor can fall back to a verified Internet Archive snapshot dated 2025-09-25. Results from that fallback are valid FCC records, but they are not current weekly data.
Always inspect each item's sourceUrl and archiveDate before using it for time-sensitive monitoring. sourceUrl identifies whether the run used the live FCC download or the dated snapshot, while archiveDate records the source timestamp when available.
scrapedAt only records when the Actor created the dataset item; it does not indicate source freshness.
The Actor does not claim that every physical communications tower must have an ASR registration; FCC registration requirements depend on aviation-notification rules.
Working with coordinates and GIS
Latitude and longitude are converted from FCC degrees, minutes, and seconds to signed decimal degrees.
West longitudes and south latitudes are negative.
For GIS use:
- Export CSV or Parquet.
- Treat
longitudeas X andlatitudeas Y. - Use WGS84-style decimal coordinates for visualization.
- Retain
registrationNumberandsourceUrlfor traceability.
Some FCC rows have no usable surface coordinate and therefore omit coordinate fields.
Tips for reliable tower research
- 🎯 Start with a state or exact registration number.
- 📦 Increase
maxItemsonly after checking a sample. - 🧭 Use a bounding box for map-tile or market-area workflows.
- 🏢 Search a distinctive owner substring rather than a legal suffix.
- 📐 Remember that source height values are meters.
- 🕒 Schedule weekly runs after the FCC archive refresh.
- 🔗 Keep the FCC identifiers when joining to internal systems.
Scheduling and monitoring
Use an Apify schedule to refresh an inventory every week.
For change monitoring, write each run to a named dataset or export it to your warehouse, then compare on registrationNumber and relevant status/date fields.
Useful monitoring events include:
- new registrations
- status changes
- owner-name changes
- newly constructed or dismantled dates
- FAA study changes
The initial release exports current complete records; it does not emit a computed change log.
Integrations
Google Sheets and Excel
Export CSV or XLSX for tower prospecting, audit lists, and owner research.
Webhooks
Trigger a webhook when scheduled runs finish, then pass the dataset ID to a downstream process.
Make and Zapier
Connect Apify run completion to CRM enrichment, notifications, or file delivery.
GIS and data warehouses
Load CSV or Parquet into QGIS, ArcGIS, BigQuery, Snowflake, Postgres, or DuckDB.
Python notebooks
Use the API client to fetch records into pandas or GeoPandas for spatial analysis.
Use FCC ASR Towers Scraper with the Apify API
JavaScript
import { ApifyClient } from 'apify-client';const client = new ApifyClient({ token: process.env.APIFY_TOKEN });const run = await client.actor('automation-lab/fcc-asr-towers-scraper').call({states: ['TX'],maxItems: 100,});const { items } = await client.dataset(run.defaultDatasetId).listItems();console.log(items);
Python
from apify_client import ApifyClientclient = ApifyClient(token="YOUR_APIFY_TOKEN")run = client.actor("automation-lab/fcc-asr-towers-scraper").call(run_input={"states": ["TX"], "maxItems": 100})items = client.dataset(run["defaultDatasetId"]).list_items().itemsprint(items)
cURL
curl -X POST \"https://api.apify.com/v2/acts/automation-lab~fcc-asr-towers-scraper/runs?token=$APIFY_TOKEN" \-H "Content-Type: application/json" \-d '{"states":["TX"],"maxItems":100}'
Use the FCC tower scraper through MCP
Apify MCP lets compatible AI assistants start the Actor and inspect its output.
Claude Code
$claude mcp add --transport http apify "https://mcp.apify.com?tools=automation-lab/fcc-asr-towers-scraper"
Claude Desktop, Cursor, or VS Code
{"mcpServers": {"apify": {"url": "https://mcp.apify.com?tools=automation-lab/fcc-asr-towers-scraper"}}}
Example prompts:
- “Export 50 active FCC antenna structures in Alaska.”
- “Look up these FCC ASR registration numbers and summarize their owners.”
- “Find structures over 150 meters in this bounding box and return CSV-ready fields.”
Is it legal to scrape FCC ASR data?
The Actor downloads a public US government data archive made available by the FCC.
Government data may still contain contact details, so use results for legitimate, compliant purposes.
Follow applicable privacy, marketing, telecommunications, and data-retention rules.
Do not use the dataset to harass owners, compromise infrastructure, or misrepresent FCC status.
This documentation is not legal advice.
Limitations
- The Actor reflects the source archive and does not independently verify physical towers.
- Not every antenna or communications site is subject to FCC ASR registration.
- Some registrations omit coordinates, contacts, dates, or other optional values.
- FCC structure and lighting codes are preserved as source codes.
- V1 does not include remarks, special conditions, or complete history rows.
- V1 processes the weekly complete archive rather than daily transaction deltas.
Troubleshooting
Why did my bounding-box search omit a tower with a street address?
The FCC row may lack usable coordinates. Geographic filters require coordinates and fail closed; try state, city, or registration lookup instead.
Why did an owner search return no records?
Try a shorter distinctive substring and remove punctuation or corporate suffixes. The Actor matches the FCC owner/entity text, which may differ from a current brand name.
Why is the run not instant for a small maxItems?
The Actor still downloads and joins the complete weekly FCC archive so filters are applied correctly. maxItems limits saved records and output charges, not source archive size.
Frequently asked questions
Can I export all US FCC tower registrations?
Yes. Remove location filters and set an appropriate maxItems, up to 100,000 per run. Split very large exports by state if you need more.
Can I search by FCC ASR number?
Yes. Add one or more exact values to registrationNumbers.
Are heights feet or meters?
All output height and elevation fields are in meters, matching the source measurements.
Does the Actor need a proxy?
No. It uses the FCC's anonymous public bulk-download endpoint directly.
Does it return cell tower tenants or antennas?
No. ASR records describe registered antenna structures and their owners; they are not a complete tenant, carrier, radio, or antenna inventory.
Can I run it every week?
Yes. Weekly scheduling is a strong fit for inventory refresh and monitoring workflows.
Related FCC and telecom scrapers
Use FCC ULS License Holder Scraper when you need radio-license holder and ULS authorization data rather than physical ASR tower registrations.
The two Actors cover different FCC entities and can be combined in a telecom data warehouse using FCC identifiers where applicable.
Support
If a valid FCC archive record is parsed incorrectly, open an Actor issue with:
- the ASR registration number
- your exact input
- the expected source value
- the run ID
That evidence helps reproduce field-layout or source-data changes quickly.