Methodology
This dashboard is a statistical screening tool, not a finding of wrongdoing. Each provider is scored against six signals identified during a working session with Secretary Allison Bragg, AR Department of Inspector General, on May 5, 2026.
Data source
Provider records are pulled directly from the public AR DHS Childcare Licensing portal. The dashboard runs two scrape passes: a single bulk Apex call that returns name, address, primary contact, capacity, license status, owner, director, email, website, CACFP / ABC / voucher participation, and Better Beginnings level for every active provider; and a per-provider detail pass that fetches license issue date, hours of operation, age-level capacity, staff:child ratios, inspection visits, complaint records, and corrective-action agreements from each provider's public detail page. Detail-page data is informational only and does not move the risk score.
The six signals
The point caps below are the dashboard defaults. Each signal has a 0-1 normalized intensity per provider, and the home page exposes a sliders panel that lets reviewers re-weight all six signals on the fly. The sliders are independent: the default total is 100, but a reviewer can raise or lower individual caps and change the maximum possible score. Weight choices are encoded into the URL, so a reviewer can share a custom-weighted view simply by copying the link. Manual overrides (e.g. facilities reviewed and confirmed legitimate) always win regardless of weighting.
1. Street view AI
up to 32 pointsWe pull a Google Street View image of each licensed address and ask Gemini 3 Flash to classify the visible structure into ten categories. A facility classified as a residential house, abandoned/vacant building, industrial warehouse, or vacant lot — with confidence above 0.6 — flags. School-based and church-based programs are detected via license subtype + name regex and discounted 80% on this signal because mistaken classifications (a school playing field reading as 'vacant lot') are common.
2. Multi-facility contact clustering
up to 24 pointsWe group providers by normalized primary contact (name plus phone). A contact tied to two or more facilities flags every facility in the cluster, with weight scaling by cluster size. School-district and church-campus coordinators can legitimately administer multiple branches under one name, so those institutional host patterns are discounted sharply.
3. Capacity vs. town population
up to 8 pointsA facility's licensed capacity divided by the population of its town (Census ACS 2022 place-level estimates) is compared against the statewide distribution. Facilities above the 95th percentile flag (the AR statewide p95 is 6.55%). The canonical pattern is the Arkansas case Secretary Bragg prosecuted: a facility in Marianna (population ~3,800) claiming 150 children daily.
4. Repeat contact across multiple towns
up to 8 pointsWhere a contact's cluster spans two or more distinct towns — especially small towns — we add additional weight on top of the basic clustering signal. This matches the typical fraud workflow described by Bragg, where one operator opens fake facilities in adjacent towns.
5. Facebook presence
up to 28 pointsFor each of the 1,845 providers, we query Brave Search for `"facility name" "city, AR" facebook` and score top results by token-set similarity to the licensed name. We then parse Brave's cached snippet for the og:description line that Facebook embeds (`X likes · Y talking about this · Z were here`) to read follower count and FB's 7-day rolling activity proxy. Outcomes: not found (no plausible page) scores the full weight; stale (likes ≥ 50 but 0 talking, or talking-about-this <0.5% of likes) scores 90%; tiny (<50 followers for a center with capacity 30+) scores 60%; weak match (similarity 0.18-0.30) scores 40%; active or uncheckable score 0. School, church, and other institutional host-site patterns are discounted 50% on this signal. Full-state coverage: 952 active, 275 stale, 318 low-confidence, 249 not-found, 38 uncheckable, 13 tiny.
6. Geographic proximity clustering
0 points by defaultUsing haversine distance on geocoded coordinates, we union-find every pair of facilities within 50m of each other. The strongest pattern is multiple facilities under the same primary contact at one location. Proximity is currently shown as context-only in the default view because its default weight is 0; reviewers can still turn it on through the geographic/operator presets or a custom slider. Different operators sharing an exact (≤5m) address score lower because school + after-school provider co-tenancy is common; different operators 5-50m apart score the lowest because shared campuses are usually legitimate. We filter geocoding artifacts (facilities listed in different cities but pinned to the same coordinates fall back to a parent admin HQ). The full-state run produced 125 valid co-located clusters; 8 are same-contact pairs/triples worth investigating.
Risk tiers
The UI uses three review queues rather than declaring any provider "critical": Priorityis 50+ points, Watch is 25-49 points, and Low is below 25 points. This better reflects the current score distribution, where the highest default score is below the old critical threshold and every flagged record still requires human confirmation.
Limitations
- Street View imagery may be outdated, occluded, or unavailable. Where Google has no image, the provider is flagged for manual review but receives no automated score.
- Geocoding can place rural addresses imprecisely. Street View evidence now displays lookup method, panorama date, and drift from the geocoded point so reviewers can see when an image needs manual confirmation.
- The score is intended to surface facilities for additional review, not as evidence. Many flagged facilities will turn out to be entirely legitimate.
- In-home (family) daycares are licensed at residential addresses by design. The Street View signal applies only to center-type licenses unless other signals also flag.
- The Facebook check parses Brave Search's cached snippets rather than fetching Facebook directly, because Facebook rate-limits anonymous page fetches aggressively. Brave's snippets include the verbatim og:description line ("X likes · Y talking about this · Z were here") which gives us both audience size and recency. About 17% of "low-confidence" matches are facilities with weak name overlap to the top result and should be reviewed manually before action. The 38 "uncheckable" providers (2%) are typically operating under a parent organization's page or have FB pages where Brave's index is stale.
Informational fields (not weighted)
The provider detail page also surfaces fields pulled from the bulk Apex response and the per-provider detail page that are notpart of the risk score: CACFP / ABC pre-K / state voucher participation, Head Start indication derived from name/subtype, Better Beginnings quality rating, separate director vs. owner fields, email, and website. The detail-page pass adds license issue date (used to compute years of operation), hours of operation, age-level capacity and enrolment counts, staff:child ratios, the inspection visit history (date plus regulation citations), complaint records, and corrective-action agreements. These are context for the analyst — a provider drawing CACFP plus state-voucher revenue with no website and a brand-new license is a recognizable fraud-target profile, but neither funding-program participation nor recent licensure is itself evidence of fraud and so neither moves the score. The funding fields are also surfaced as compact "C / A / V / H" chips and a Better Beginnings level column on the provider table. Transportation is hidden for now because the bulk field is false for every provider in the current snapshot.
What is not (yet) included
Future signals from the same conversation: complaint-history NLP, corrective-action recidivism, and phone-based enrollment verification (calling each facility to ask whether spots are available next semester). Those require a Twilio/Vapi integration and additional review workflow and are tracked separately.