OrbTop

NGC Coin Price Guide & Coin Explorer Scraper

ECOMMERCE

NGC Coin Price Guide & Coin Explorer Scraper

Scrapes the full NGC Coin price guide — US and World coins — and returns one record per coin-grade-designation combination. Covers every NGC-rated series, every active designation (BN, RB, RD, CAM, DCAM, PL, and others), and every grade from PO-1 through MS/PF-70 (Base and Plus where applicable).

The price guide at ngccoin.com uses Angular virtual scrolling, which means most of the price table is deliberately hidden from standard scrapers. This actor bypasses that by calling NGC's internal JSON API directly — the same endpoint the browser uses. You get all grades for all coins, not whatever happens to be visible in the viewport.

What You Get

Each output record represents one coin at one grade and one designation. A 1909 VDB Lincoln Cent graded MS-65 BN is one record. The same coin graded MS-65 RD is a second record. This structure makes it straightforward to analyze price spreads across grades or designations without reshaping the data yourself.

Fields returned per record:

Field Type Description
coin_id string NGC internal coin ID — stable across runs, use as a join key
source_url string URL of the price guide series page
region string united-states or world
country string Country of origin (world coins); United States for US coins
series string Series name, e.g. Lincoln Cents Wheat Reverse (1909-1958)
period string Period or category label
denomination string Face value denomination, e.g. 1C, 50C, $20
year integer Issue year
mint_mark string Mint mark (D, S, O, CC); null for Philadelphia
variety string VAM, die variety, overdate, or other designation
designer string Obverse / reverse designer(s)
composition string Metal composition, e.g. Silver, Bronze, Gold
diameter_mm number Diameter in millimetres
weight_g number Weight in grams
mintage integer Total mintage (may be combined across mints)
ngc_number string NGC UniversalCoinTypeID, e.g. 22B2
grade string Grade label as displayed, e.g. MS-65, PF-65, VG
grade_numeric number Numeric grade on the Sheldon scale (Plus grades add 0.5)
designation string Strike or surface designation: BN, RB, RD, CAM, DCAM, PL, etc.
price_usd number NGC guide price in USD
price_as_of string Date of last price update, e.g. 05/19/2026
image_url string Obverse image URL from NGC CDN

Input

Parameter Type Default Description
maxItems integer 0 (no limit) Maximum coin-grade records to return. Set to a small number for test runs.
region string (all) Filter by region: united-states, world, or leave blank for both.
series_ids array [] Optional list of NGC series IDs (as strings) to limit the run. Leave empty to crawl all series.

Full runs covering all US and World series return millions of records. Use series_ids or maxItems to narrow scope for targeted pulls.

How It Works

Three stages run sequentially, with concurrent API calls within each stage.

Stage 1 walks NGC's three price-guide sitemaps (sitemap-price_guide{1,2,3}.xml), each containing tens of thousands of URLs. Applies region and series_ids filters here to avoid fetching pages you do not need.

Stage 2 fetches each series+designation HTML page (8 concurrent). The Angular info table above the price table renders parent-coin-id attributes on every coin row regardless of virtual scroll position. This gives a complete coin ID list without rendering JavaScript.

Stage 3 calls two JSON APIs per coin (10 concurrent):

  • /coin-explorer/data/coins/{id}/price-guide/ — all grade prices
  • /coin-explorer/data/coins/{id}/ — coin metadata (year, mint, composition, designer, image)

No proxy needed. NGC's APIs are publicly accessible without authentication.

Notes

Some series in the sitemap return HTTP 404 (typically token sets, exonumia subcategories, and specialty series that have been reorganized). These are skipped with a warning and do not affect standard price guide coverage.


Scraper built with the OrbTop actor framework. Data sourced from NGC Coin Price Guide.