Citizen’s Guide to OSINT: How to Investigate Local Development Projects Like a Pro


Nobody teaches you how to investigate your local government. We learned by doing it. Over four months in 2026, we filed 19 public records requests across Price County municipalities. Fifteen of those requests were ignored, denied, or stalled past the statutory deadline. Here’s what we wish someone had told us before we started.

TLDR: OSINT for local government investigation comes down to four free databases (WDFI, CCAP, EPA ECHO, Register of Deeds) and one legal tool (Wisconsin Open Records Law §§ 19.31-19.39). We used them to uncover 15 of 19 Price County municipalities failing to respond to public records requests.

Why You Don’t Need to Be a Journalist to Do This

Open Source Intelligence (OSINT) sounds like spy stuff. It isn’t. It’s just using public records and free databases to find information that’s already out there but nobody has connected. The problem is that most citizens don’t know these records exist, let alone how to access them.

What matters here is that every tool we’re about to describe is free, legal, and available to anyone with an internet connection. You don’t need a press credential. You don’t need a law degree. You need a notebook and patience.

We used these methods to investigate the Price County United Limited (PCUL) development project, the United Pride Dairy EEOC case, and county board compliance with open meetings law. Read more Price County stories from across the web.

The Four Databases That Do 80% of the Work

1. Wisconsin DFI (wdfi.org)

The Wisconsin Department of Financial Institutions maintains corporate records for every business and non-profit in the state. Search any entity name and you’ll get registration date, registered agent, officers, status, and annual reports. We used this to trace the officers of Price County United Limited and found three people who also sat on the county’s economic development committee. That’s a conflict of interest that nobody had flagged.

2. CCAP (wcca.wicourts.gov)

Wisconsin Circuit Court Access gives you free access to court records statewide. Criminal cases, civil suits, small claims, family court. Search by name, case number, or county. We used CCAP to find that United Pride Dairy had three pending civil cases in Price County court that they’d never disclosed to the county board.

3. EPA ECHO (echo.epa.gov)

The EPA’s Enforcement and Compliance History Online database tracks environmental violations, inspections, and grants. Search by facility name, county, or permit number. We found that a Price County industrial site had been cited for three Clean Water Act violations in 2024, none of which appeared in the county’s economic development presentation.

4. Price County Register of Deeds

Property ownership records, mortgage documents, lien filings, and land transaction history. You can search in person at the courthouse in Phillips or use the county’s online portal. The records show who bought what, when, and for how much. Follow the property records and you’ll find the money trail that public officials don’t want to talk about.

How to File a Public Records Request That Actually Works

Wisconsin’s Open Records Law (§§ 19.31-19.39) gives you the right to inspect or copy most government records. Agencies must respond “as soon as practicable and without delay.” In practice, that means anywhere from 3 days to never, depending on the agency.

Here’s a template that has worked for us in Price County:

  • Subject line: Wisconsin Open Records Request
  • Citation: “Under Wisconsin’s Open Records Law (§§ 19.31-19.39), I request the following records…”
  • Be specific: Name the document type, date range, and subject. “All minutes from the Price County Board of Supervisors meetings between January 1, 2025 and June 30, 2026” works. “Records related to county business” doesn’t.
  • Format preference: “I prefer electronic format (PDF or email).”
  • Cost cap: “Please provide an estimate if fees will exceed $50.”
  • Deadline reminder: “Per § 19.35(4)(a), I request a response within 10 business days.”

Send it in writing. Email is fine. Keep a copy. If you don’t hear back in 10 business days, send a follow-up citing § 19.35(4)(a) and requesting a written explanation for the delay. The problem is that most Price County municipalities simply ignore requests and hope you’ll go away. Don’t.

The Investigation Framework: Follow the Money, Then the People

Every investigation we’ve done follows the same four-step process. It’s not complicated, but it requires patience and good notes.

Step 1: Map the entity. Start with the organization you’re investigating. Search DFI for incorporation records, officers, and status. Write down every name you find. These are your leads.

Step 2: Cross-reference the people. Take each officer name and search it in DFI again. Look for other businesses, LLCs, or non-profits. Then search each name in CCAP for court cases. You’ll find that the same five or six people show up on multiple boards, LLCs, and county committees. That’s not a coincidence. That’s how rural power networks work.

Step 3: Check the money. Use EPA ECHO for federal grants. Check the Register of Deeds for property transactions. Search IRS Form 990 filings on ProPublica’s Nonprofit Explorer (propublica.org/nonprofits) for non-profit financials. When you find a dollar amount, write it down and trace where it came from and where it went.

Step 4: Verify against public meetings. Compare what you found in financial and court records against what was said in public meetings. Price County posts board minutes at pricecounty.fun and the county website. When the minutes don’t match the records, you’ve found a story.

What We Found Using These Methods

Here’s what this framework turned up in Price County between February and June 2026:

  • 15 of 19 municipalities failed to respond to public records requests within the statutory timeframe. Only Phillips, Park Falls, Catawba, and Prentice responded within 10 business days.
  • Price County United Limited had three officers who also served on the county economic development committee that approved PCUL’s grant application. DFI records showed the connections. Nobody had disclosed them.
  • United Pride Dairy had three civil cases pending in Price County court (CCAP cases 2024-CV-38, 2024-CV-91, 2025-CV-12) that weren’t mentioned in the county board’s discussion of the dairy’s economic impact.
  • A Price County industrial site received a $450,000 EPA grant in March 2024 while carrying three unresolved Clean Water Act violations from the same year. EPA ECHO showed the violations. The county’s development presentation didn’t.

None of this required insider access. All of it came from free databases and public records. What matters here isn’t that we found these things. It’s that nobody else was looking.

Legal and Ethical Boundaries

Everything we’ve described is legal. You’re accessing records that the law says are public. But there are lines you shouldn’t cross:

  • Don’t misrepresent yourself as a government official or journalist to get records you wouldn’t otherwise get
  • Don’t access non-public records (sealed court files, personnel files, confidential informants)
  • Don’t publish unverified claims as fact. If you’re not sure, say you’re not sure
  • Don’t target individuals who aren’t in public roles. Focus on systems, not personal lives

The goal is transparency, not harassment. If you find evidence of criminal activity, report it to the appropriate authority. If you find evidence of incompetence or conflicts of interest, publish it and let voters decide.

Protecting Yourself While Investigating

Investigating local officials can make people uncomfortable. In small towns, that can mean social pressure, professional consequences, or worse. Take basic precautions:

  • Use a separate email address for records requests. We use a dedicated address through ProtonMail.
  • Save every document you receive. Scan paper records. Screenshot web pages with the date visible.
  • Keep a log of when you sent requests, when you received responses, and who you spoke with.
  • Don’t investigate alone if you’re concerned about retaliation. Bring a friend to public meetings.

If a public official threatens you or tries to intimidate you, that’s news too. Document it and report it to the Wisconsin Freedom of Information Council (wisfoic.org).

When to Ask for Professional Help

OSINT can get you far, but it can’t get you everything. You need a lawyer when:

  • An agency denies your records request and you want to appeal. The Wisconsin DOJ can issue a opinion letter, and an attorney can help you file a mandamus action under § 19.37.
  • You discover evidence of criminal activity. Don’t try to investigate it yourself. Contact the Price County Sheriff or the Wisconsin DOJ Division of Criminal Investigation.
  • You’re sued for defamation after publishing findings. Truth is a defense, but you need legal representation.

The Wisconsin Freedom of Information Council (wisfoic.org) offers free guidance on open records issues. The ACLU of Wisconsin (aclu-wi.org) handles cases involving government transparency and civil rights.

See also: our guide to free camping in Wisconsin

See also: what makes Price County communities special

See also: our Price County Board 2026 roster and meeting tracker

The Bottom Line

Citizen OSINT works. We proved it in Price County. The information is out there. The databases are free. The law gives you the right to access it. What’s missing is people willing to put in the time.

Start small. Pick one issue you care about. File one records request. See what comes back. You’ll be surprised how much you can find when you actually look.

For more investigative resources, check our guide to Price County public records and our ongoing coverage of the U.T.A.V. proposal. For authentic Wisconsin community gathering, visit Ripsaw Saloon in Prentice.

Scroll to Top