01 Data Ingestion Process
1
Source Files Received

Two files provided — a 195-well Enverus/DI export with header data, production, EUR estimates, and lat/long; and a 237-row mineral tract ownership CSV with Section-Township-Range positions across 5 ND counties.

Wells Table (37).CSV — 195 wells Shapefile Table (2).csv — 237 tracts output5.shp — GIS shapefile
2
Archived to S3

Raw files archived as-is before any transformation. This creates a permanent record of the source data and enables re-ingestion if formats change.

s3://oilgasorgrass.com/customers/overland/raw/
3
Well Submissions Loaded

Enverus column names mapped to normalized schema fields. API14 stored as primary identifier. Both surface and bottom hole coordinates retained. Production and EUR figures preserved from source.

CUSTOMERS.WELL_SUBMISSIONS 195 rows
4
Mineral Tracts Parsed

STR strings (e.g. "160N-94W-27") parsed into discrete township, range, and section fields for direct SQL joins. Acreage (NMA/NRA) and entity ownership preserved per tract.

CUSTOMERS.MINERAL_TRACTS 237 rows
5
STR Exact Match

Mineral tract sections joined against our 42,609-well NDIC index. Every well physically located on an owned section is captured — including wells the customer didn't know to ask about. Township/range format normalized (NDIC uses spaces: "159 N" vs "159N").

223 wells matched on mineral tracts match_type = exact_str
6
Radius Match — 5 Mile Expansion

Using tract centroids (derived from matched well coordinates) and our MILES_BETWEEN spatial UDF, every NDIC well within 5 miles of any holding is captured. This surfaces nearby DUCs, permitted wells, and producing wells that affect mineral value without sitting on the exact section.

439 additional wells discovered match_type = radius_5mi
195
Submitted
223
On Mineral Tracts
439
Within 5 Miles
762
Total in Scope
02 Storage Architecture

Data lives in two places: S3 for raw file archival and Snowflake for queryable analytics. The Snowflake layer is fully multi-tenant — adding a second customer is a single command.

S3 Archive
s3://oilgasorgrass.com
customers/
overland/
raw/
wells_2026-04-08.CSV← original Enverus export
tracts_2026-04-08.csv← original shapefile table
Snowflake — OIL_GAS_ANALYTICS.CUSTOMERS
Table / ViewRowsPurpose
CUSTOMER_REGISTRY1Customer identity and contact. One row per account.
WELL_SUBMISSIONS195Wells as submitted by customer. Full Enverus field mapping preserved.
MINERAL_TRACTS237Mineral ownership positions. STR parsed to township/range/section. Centroids derived from matched wells.
TRACT_WELLS762All wells in scope. Keyed by NDIC file number. Carries match_type, source, distance_miles.
ENRICHED_WELLS ⟶viewFull enrichment surface. Joins TRACT_WELLS to signals, production, intelligence, well master.
03 TRACT_WELLS — Key Fields
ColumnTypeDescription
customer_idVARCHARMulti-tenant key. All queries filter on this.
ndic_file_noVARCHARNDIC permit/file number. Primary join key to all internal analytics.
api14VARCHAR14-digit API number from RAW_WELL_INDEX or submission.
match_typeVARCHARexact_str — well sits on a mineral section. radius_5mi — within 5 miles of a holding.
sourceVARCHARsubmitted — customer included. discovered — found by the system.
distance_milesFLOAT0.0 for exact, computed miles for radius matches. Foundation for "within X miles" queries.
surface_lat / surface_lonFLOATWGS84 coordinates from NDIC. Ready for future map rendering.
04 ENRICHED_WELLS — Intelligence Joins
The ENRICHED_WELLS view is the primary analytical surface. It joins every well in scope to all available intelligence layers simultaneously. Add a WHERE clause and every column is already there.
LayerSourceColumns Added
Well Master V_WELL_MASTER well_name, operator, well_status, spud_date, formation, lat/long — 42,609 wells
Signals CANONICAL_WELL_SIGNALS tier (1/2/3), activity_score, has_h2s_flag, has_flare_flag, hazard_flags — 618 wells
Production V_PRODUCTION_ENRICHED latest_oil_bbls, latest_gas_mcf, cum_oil_bbls, cum_gas_mcf, months_produced
Intelligence V_WELLFILE_INTELLIGENCE wellfile_summary (LLM), upcoming_hearings_60d, signed_orders_90d
Coverage Flags Derived has_signals, has_intelligence, has_production — TRUE/FALSE per well
05 Available Queries
Wells on mineral tracts with signalsEXACT MATCH
SELECT api14, well_name, operator, tier, well_status, formation FROM CUSTOMERS.ENRICHED_WELLS WHERE customer_id = 'overland' AND match_type = 'exact_str' AND has_signals = TRUE ORDER BY tier, operator;
Discovered wells — not in customer's listDISCOVERY
SELECT api14, well_name, operator, tier, distance_miles, county FROM CUSTOMERS.ENRICHED_WELLS WHERE customer_id = 'overland' AND source = 'discovered' ORDER BY distance_miles;
DUCs and permits near holdingsACTIVITY
SELECT api14, well_name, operator, well_status, distance_miles, county FROM CUSTOMERS.ENRICHED_WELLS WHERE customer_id = 'overland' AND well_status IN ('DUC', 'PERMITTED', 'DRILLING') ORDER BY distance_miles;
Radius intelligence summary — "what do we have within X miles"RADIUS
SELECT COUNT(*) AS total_wells, SUM(CASE WHEN has_signals THEN 1 END) AS with_signals, SUM(CASE WHEN has_intelligence THEN 1 END) AS with_intelligence, SUM(CASE WHEN well_status = 'DUC' THEN 1 END) AS duc_count FROM CUSTOMERS.ENRICHED_WELLS WHERE customer_id = 'overland' AND distance_miles <= 10; -- adjust radius
Mineral tract portfolio by entityPORTFOLIO
SELECT entity, county, COUNT(*) AS tract_count, SUM(nma) AS total_nma, SUM(nra) AS total_nra FROM CUSTOMERS.MINERAL_TRACTS WHERE customer_id = 'overland' GROUP BY 1, 2 ORDER BY total_nma DESC;
06 Intelligence Pipeline — Gap Fill
862 wells in Overland's scope currently have no LLM intelligence. Running the full pipeline on these wells would generate wellfile summaries, hazard flag extraction, and service intent signals for each. The pipeline processes NDIC wellfiles (PDFs) through OCR and DeepSeek/Haiku models.
A
Queue Gap Wells

Run queue_pipeline_gaps.py to identify wells with no signals. Outputs a prioritized list (submitted wells first, then discovered) with operator and status context.

302 submitted gaps · 560 discovered gaps
B
Download NDIC Wellfiles

Fetch PDF wellfiles from NDIC for queued file numbers. PDFs contain formation data, completion reports, scout tickets, and regulatory correspondence.

Stored locally + synced to S3
C
OCR + Text Extraction

PDFs processed through ocrmypdf + pdftotext. Clean text written to staging directory.

D
LLM Intelligence Extraction

DeepSeek model extracts structured intelligence from clean text: formation data, H2S/CO2 presence, completion details, service contractor signals, hazard flags. Results written to JSON and loaded to Snowflake.

~30s per well batch_process_haiku_smart.py
07 Key Findings — Initial Analysis
These findings emerged from the first pass of enrichment against our existing signals database (~618 wells with intelligence coverage). The numbers below reflect what we know today — before running the pipeline on the 862 gap wells.
65
Signaled Wells
22
H2S Flagged
50
Flare Flagged
128
Discovered on Tracts
Production standouts — Continental pad, Williams County
WellCum Oil (bbl)MonthsLatest Oil/moNote
Kenneth 6-17H369,695724,721~640K EUR pace. On Overland's mineral section.
Michael State Federal 7-16H305,330719,776Adjacent section. Part of same Continental development.
Helen 7-8H294,455724,319Pad partner. Same TWNSP/RNG as Kenneth wells.
Kenneth 5-17H1277,120718,364Multiple Kenneth wellbores suggest systematic development.
Mineral tract portfolio — top positions by NMA
EntityCountyNMANRATracts
Fund 3Williams1,4781,90082
Fund 2Williams72999222
Fund 5Williams61571438
OMHWilliams40851182
Fund 4Williams26332636
08 Continental Resources — Pad Investigation
Continental is the dominant operator on Overland's acreage — 228 wells, 24 with active signals. The Kenneth/Helen/Arley/Christiana pad cluster in Williams County is the highest-producing group in scope. Investigation running to determine whether Continental has additional permitted or DUC locations in those sections, upcoming regulatory hearings, and section density.
1
Pad Location — T.154N., R.96W., Sections 8 / 16 / 17

The Kenneth/Helen/Michael State Federal wells sit in 3 contiguous sections. Continental has 101 wells across those sections — an entirely Continental-controlled block. XTO Energy has 2 plugged/abandoned wells from a prior era; no competitive operator activity. This is a systematic multi-pad development in Continental's core Williams County position.

101 Continental wells confirmed XTO: 2 plugged, no active competition
2
Active Drilling Pipeline — 38 Wells in Williams County

Continental currently has 8 DRL, 8 LOC, and 30 Confidential wells in Williams County — 38 total in the active pipeline. Two active pads identified: Brooklyn-Bakken pad (T.155N., R.98W., Sections 15 & 22 — 6+ wells spudded Sept–Oct 2025, Charleston/Addyson names) and Rose Federal pad (T.154N., R.97W., Sections 3 & 34 — 4 DRL wells, June–Sept 2025). Also: 6 "Plano" wells permitted in T.154N., R.101W., Section 28 with no spud dates yet.

8 drilling · 8 permitted · 30 confidential Brooklyn-Bakken + Rose Federal pads active now
3
Regulatory Alert — New Spacing Unit Pending

Case C32803 (March 2026): Continental filed for a new 2,560-acre overlapping spacing unit in the Wildrose/Corinth-Bakken Pool, Divide AND Williams counties. Hearing April 1, 2026 — a cross-county infill/expansion push touching Williams directly. A second batch of 18 Continental docket cases is scheduled for the April 23, 2026 NDIC hearing, including spacing and pooling for T.160N./T.159N., R.97W. — adjacent to Overland's Williams County position. Earlier regulatory actions: two field rule exceptions granted Feb 2026 for the Charleston 8-22HSL well (drilled within 150-ft north boundary setback on the active Brooklyn-Bakken pad).

Case C32803 — Apr 1 hearing 18 docket cases — Apr 23 hearing Wildrose/Corinth-Bakken Pool · Williams + Divide
4
Production Decline Curve — Normal, Healthy Bakken Profile

Monthly production confirms a standard Bakken decline. Kenneth 6-17H and Helen 7-8H peaked at 83,360 and 77,686 bbl/month respectively in August 2025 (first full production month). By January 2026 (month 6) both are producing ~24,000–25,000 bbl/month — a ~70% decline from peak, which is exactly on-curve for this formation and lateral length. At this rate, EUR projection is 300–400K bbl per well. Kenneth 5-17H1, an older vintage, is mid-decline at ~18K/month after 7+ months. The curve shape tells us Overland's royalty income from this pad is stabilizing, not collapsing.

Peak Aug 2025: 83K bbl/mo Jan 2026: ~25K bbl/mo Normal 70% first-6-month decline · EUR 300–400K projected
Bottom line: Overland's mineral sections sit inside Continental's most active core development block in Williams County. The pad is producing on a healthy decline curve, Continental controls 100% of those sections, and there are 38 more wells in the County pipeline. The April 1 and April 23 NDIC hearings are the next regulatory events to watch — both touch Williams County acreage directly adjacent to Overland's position.
Raw data
customers/continental_investigation.json — 7 queries, 101+ rows · 2026-04-08
09 Deeper Dive — Full Analytics Cross-Reference
A second-pass analysis running customers/overland_deep_analysis.py against all analytics layers for the full 762-well scope. 8 query groups covering inventory, operator signal rates, confidential wells, H2S geography, radius ring activity, production/signal overlap, tract entity mapping, and regulatory pipeline. Results in customers/overland_insights.json and customers/overland_insights_summary.md.
1
Hess Bakken — 20% Signal Rate, Highest in Scope

Hess Bakken Investments II has 26 signals across 130 wells (20.0%) versus Continental at 10.5% (24/228). Signals are concentrated in four sections that overlap Overland's mineral tracts directly: T.156N. R.95W. Sec.15 (5 wells, all signaled, all on tracts), T.157N. R.94W. Sec.12 (4/4/4), and T.156N. R.94W. Sec.3 (4/5 on tracts). Hess signals span all three tiers — Event-Based, Structural, and Time-Sensitive — across Williams and Mountrail counties.

20.0% signal rate · 26 signals / 130 wells 4 sections directly on Overland tracts
2
Confidential Wells — 61 on Overland's Mineral Tracts

76 confidential wells in scope. 61 sit on Overland's mineral sections (not in the radius ring). Most recent activity: Oasis Petroleum spudded 6 wells in Williams T.156N. Sec.23 between Feb 24–28, 2026 (Troon 5602 and Prestwick Federal 5602 pads). Kraken Operating added 2 in T.158N. Sec.4 in December 2025. Enerplus has 9 confidential wells in scope. These wells will not appear in Enverus data until confidentiality expires (~6 months post-spud).

61 conf. wells on tracts · 15 in radius ring Oasis: 6 wells spud Feb 2026 · Kraken: 2 wells Dec 2025
3
H2S Geography — 20 of 22 Flagged Wells on Overland's Tracts

22 H2S-flagged wells in scope. 20 are on Overland's mineral sections. Williams County leads with 11 (9 on tracts), McKenzie 7 (all on tracts), Mountrail 4 (all on tracts). Densest section clusters: Whiting in McKenzie T.152N. R.103W. Secs.31/32 (7 H2S wells on tracts) and Oasis in Williams T.156N. R.102W. Sec.17 (4 H2S wells). H2S is derived from OCR text analysis of NDIC wellfiles — presence drives specialized equipment requirements and affects spacing unit economics.

20/22 H2S wells on Overland tracts Whiting (McKenzie) + Oasis (Williams) — densest clusters
4
Fund 3 Entity Mapping — 1,478 NMA, 5.6M Cum Bbl Traceable

Joined MINERAL_TRACTS to ENRICHED_WELLS using REPLACE-normalized township/range (MINERAL_TRACTS stores "156N", TRACT_WELLS stores "156 N"). Fund 3's Williams County sections contain 81 wells with 5.6M barrels cumulative production — the Kenneth/Helen/Arley/Christiana pad wells are all in Fund 3 coverage. Fund 5 (Williams) follows at 614.8 NMA / 2.1M bbl. Full entity breakdown: Fund 3 Williams, Fund 2 Williams, Fund 5 Williams, OEP II Dunn, OMH across Burke/Mountrail/Williams.

Fund 3: 1,478 NMA · 81 wells · 5.6M cum bbl Township format fix: REPLACE(col, ' ', '') on both sides
5
Non-Continental Regulatory Pipeline — 73 Upcoming Hearings

FCT_DOCKET_CASES is operator/location-based (no NDIC file number), so the regulatory pipeline query matches by county and hearing date rather than well join. 73 upcoming hearings in Overland's 5 counties for non-Continental operators. Burlington Resources has a large pooling batch in McKenzie on April 22. Hess has 26 signaled wells (21 on Overland tracts) across all tier levels. Oasis has 7 signaled in Williams (all on tracts, all H2S). Whiting has 7 in McKenzie (all on tracts, all H2S).

73 upcoming hearings · 5 counties Burlington Resources: McKenzie Apr 22 pooling batch
6
Radius Ring — 16 Active-Pipeline Wells, Zavanna Leads

439 radius wells (5-mile ring). 16 in active-pipeline status (DUC/DRL/Confidential). Zavanna Energy has 8 confidential wells at 2.74–3.05 miles. Hess has 4 confidential wells at 2.26 miles. Continental has 4 DRL wells at 2.3 miles. Dominant radius ring operators: Whiting (141 wells, 1.1 mi closest), Continental (138, 2.3 mi), Hess (65, 1.5 mi), Zavanna (32, 1.1 mi). Radius formations are overwhelmingly Bakken/Three Forks variants, consistent with the primary zone on Overland's own tracts.

16 active pipeline · Zavanna 8 wells @ 2.74 mi Hess 4 conf. @ 2.26 mi · Continental 4 DRL @ 2.3 mi
7
Signal Coverage Gap — 93% of Wells Have No Signals

51 of 762 wells have signal coverage (7%). 537 have production data (70%). The top 8 producing wells — all Continental Kenneth/Helen/Arley/Christiana pad, 250K–370K cum bbl each — have zero signal coverage. This is structural: signals derive from regulatory history and wellfile text; recently-completed wells haven't accumulated the case filings and wellfile volume that generate signals. Continental has 207 wells with production but only 24 with signals. The highest-value pipeline target is LLM enrichment of the Kenneth/Helen pad wellfiles.

537/762 with production (70%) 51/762 with signals (7%) · top producers all unsignaled
Presentation impact: The Deeper Dive section in overland.html surfaces findings 1–7 as individual numbered insight cards. Section ordering updated: Continental's Core Block moved immediately after Full Scope of Holdings to front-load the highest-value finding.
Raw data
customers/overland_insights.json — 8 query groups, 762 wells · 2026-04-08
customers/overland_insights_summary.md — narrative summary, 7 insights