PublicInput Case study
STIP public involvement · NCDOT case study

A STIP map and survey that turns public comments into ranked feedback by project

NCDOT runs the largest prioritization exercise in the state on PublicInput. Here is how the STIP map and survey were built from feature layers NCDOT already had, and how every comment comes back matched to a project.

Looking for the engagement and Budget Simulator story? Read the NCDOT STIP case study.

NCDOT's P8 Prioritization Map for the draft 2028 to 2037 STIP, showing every project across North Carolina drawn by travel mode
NCDOT's live P8 Prioritization Map for the draft 2028 to 2037 STIP: 2,100 projects, 11,200 priority votes, 2,500 comments.
The problem this solves

Statewide plans generate statewide feedback. Someone has to sort it.

A State Transportation Improvement Program, or STIP, is the multi-year list of transportation projects a state DOT plans to fund. STIP public involvement is the comment period where residents weigh in on that list. A STIP map lets people find the projects near them; a STIP survey captures whether each one should be a priority and why.

A STIP covers thousands of projects across every county. Before NCDOT centralized on PublicInput, information went out through press releases, PDFs, and GIS viewers, and comments came back by email, voicemail, and public meetings. Staff matched each one to a project by hand and pasted it into a spreadsheet for the divisions.

Before

The spreadsheet relay

  • A comment arrives by email or from a hearing. A planner guesses which project it means, sometimes from a landmark.
  • Planner emails the district. District points to a program manager. Program manager moved on years ago.
  • Everything lands in one master spreadsheet with dozens of columns so it can be sorted "certain ways."
  • Divisions get a tab. MPOs and RPOs get cc'd and sort it themselves.
With the Prioritization Module

Match once, summarize by project

  • Comments left on the map are already tied to a project ID.
  • Comments from hearings are matched to a best-fit project with a confidence level, and an admin confirms.
  • Each division, MPO, and RPO sees its own projects ranked by public support, with the comments summarized.
  • The export is still there for anyone who needs the rows.
Setup

Start with the layers you already have

The engagement is built from the same ArcGIS Online feature layers the department maintains for its partners. The import tool handles the common feature-layer formats, so setup is a matter of pointing at the data and telling the tool what each field means.

1 · Upload

Drop in your project feature layer

Point the import tool at the STIP project layer in ArcGIS Online. Points, lines, and polygons come in with all their attributes.

P8_Projects_2028_2037 (FeatureServer/0)
2 · Boundaries

Add your division or district boundaries

Provide divisions, MPO and RPO areas, or any other boundary as a KML file or an ArcGIS feature layer. Projects and comments are later cross-referenced to these boundaries so each team can see what is in its region.

NCDOT_Divisions.kml · MPO_RPO_Boundaries (FeatureServer/0)
3 · Configure fields

Tell the tool what each field is

The import reads the layer's fields and proposes an identifier and a category. Each field you show on the card gets a format: Text, Number, Money, or Long note. Cost fields are recognized by name, and you say whether dollars are stored as whole dollars, thousands, or millions.

SPOT_ID → identifier · TOTAL_COST → Money, in thousands
4 · Project types

Turn a type field into color-coded tags

Pick the field that holds project type. Each value becomes a tag on the map that residents can filter by.

HighwayTransitBike / PedFerryAviation
5 · Publish

The map goes live. Meetings feed it too.

Residents vote and comment on projects directly on the map. Public meetings and hearings are scheduled on the same site and recorded, and those recordings feed comment capture and matching.

Field configuration, in practice

The import reads the layer's schema, proposes an identifier and a category, and guesses a format for each field from its name and sample values. You untick what residents shouldn't see, rename labels, and set how dollar amounts are stored. Money fields render as $850K, $4.5M, or $1.2B, with a live preview as you change the setting. Scores can come from the layer or from a spreadsheet joined on the identifier, and can be re-uploaded mid-project without a developer.

Layer fieldRole in PublicInputFormatWhat residents see
SPOT_IDProject identifierText, unique per projectH170394
PROJECT_TITLETitleTextUS 64 (Rosman Highway, S Broad Street)
DESCRIPTIONDescriptionLong noteRAB at US 64 BUS and N. Country Club Rd
MODECategoryText, low cardinalityLegend entry and map icon: Highway
TOTAL_COSTShown on cardMoney, stored in thousands18500 → $18.5M
REG_IMPACT_SCOREScore, joined by IDNumber37.9
DIV_NEEDS_SCOREScore, joined by IDNumber28.14
FROM_LIMIT / TO_LIMITShown on cardTextUS 64 BUS (S Caldwell St) → N Country Club Rd
SHAPEGeometryPoint or lineDrawn on the map, colored by category

Dollar amounts: any unit in, readable amounts out

Agencies store costs differently. NCDOT publishes project cost in thousands. Other layers use whole dollars or millions. The wizard asks once how the field is stored, then every amount scales to the right magnitude on its own: dollars, $K, $M, or $B, whichever fits the number. A live preview under the setting shows a real value from the layer, so a wrong unit is obvious before publishing.

thousands▾
Preview: Project Cost value 5,359 will show as $5.4M
ProjectCostProject CostMoney
RegImpactScoreRegional Impact ScoreNumber
DescriptionDescriptionLong note
Stored valueUnit settingShown to residents
850whole dollars$850
42,500whole dollars$43K
5,359thousands$5.4M
18,500thousands$18.5M
1.2millions$1.2M
2,400millions$2.4B
On NCDOT's live P8 map

The STIP map residents see once it's published

Screenshots from NCDOT's P8 Prioritization Map for the draft 2028–2037 STIP. Every project, score, and legend entry on it came from the feature layer and the field configuration above.

NCDOT P8 Prioritization Map, statewide view, with the legend open by travel mode and the sidebar explaining how to pick a project
Statewide · legend and sidebar open

One map, every project, grouped by mode

The legend comes from the mode field: Highway, Bicycle and Pedestrian, Rail, Aviation, Public Transit, and Ferry, with a count for each. Residents can hide a mode, search by SPOT ID, route, or place, or just click a point or line. The sidebar walks them through the ask: pick a project, say whether it should be a priority, add a comment.

Project H170394, US 64 in Brevard, selected on the map with the sidebar showing its SPOT ID, Highway mode tag, description, Regional Impact score, Division Needs score, and from and to limits
Project selected · H170394

The configured fields are the project card

Clicking a project opens the fields you chose to show: SPOT ID, mode, title, description, Regional Impact and Division Needs scores, and the from and to limits. Nothing was retyped. The vote and comment prompts sit right below, so a comment left here is already tied to this SPOT ID.

Project B190389, the Buxton-Frisco Scenic Byway multi-use path on Hatteras Island, drawn as a line on the map with its details in the sidebar
Project selected · B190389

Lines and points draw as they are in the layer

A bicycle and pedestrian project on NC-12 shows up as the line geometry NCDOT already maintains, with the same card. When the comment period closes, the map stays up so residents can keep exploring projects and reading what was submitted.

Comment capture and matching

How the STIP survey matches every comment to a project

Two kinds of comments come in. Map comments already know their project. Hearing comments don't, so the module works out the best match and shows its confidence, and an admin makes the final call.

M
On the map, the match is automatic.

A resident clicks a project and leaves a comment. It is tied to that project's SPOT ID the moment it's submitted. Nothing to sort.

H
From a hearing, the match is intelligent.

Comments captured from a recorded meeting don't carry a project ID. The module looks at where the hearing was held, where the speaker lives if known, keywords in what they said, and any other clues that point to a project. It proposes a best-match project and states how confident it is.

✓
An admin confirms.

High-confidence matches can be accepted quickly, one after another. Lower-confidence matches are where staff slow down and check that the right project is attached. Either way, the person stays in control of the record.

HighClear project reference. Move quickly. MediumLikely match from location and keywords. Glance and confirm. LowAmbiguous. Take your time or ask the district.

Hearing comments · Division 4 open house

3 to review
"The US-64 interchange at Exit 20 backs up every morning. That widening needs to happen before anything else on this list."
Speaker 4 · 00:12:40Location: Rocky Mount
US-64Exit 20wideninghearing within 2 mi
H.01221
US-64 at Exit 20 · Widening and interchange improvements
High
AcceptChange project
"Please put something in for the bike lane on Church Street. It's been on the list for years."
Speaker 7 · 00:21:05Location: not given
Church Streetbike lane2 candidates nearby
B.00987
Church St · Bicycle lane, Phase 2
Medium
AcceptChange project
"I'm tired of seeing those railroad ties piled up along the road. It looks terrible."
Speaker 9 · 00:34:18Location: Nashville
railroadno route namedhearing area only
R.00310
Rail crossing improvements · Nash County
Low
AcceptReview candidatesNot a project
What the divisions receive

A ranked queue and a summary, not a 40-column export

Divisions have days, not weeks, to fold public input into point assignment. Reading a thousand comments in a spreadsheet does not fit in that window. A report scoped to your own division, with projects ranked by support and the comments underneath, does.

What used to arrive
IDDivMPOCommentSourceAssignedStatusNotesPrior yr
H.0122104CAMPOWiden US-64 at exit 20, backs up dailyemail?openask D.N.2024
?04?tired of the railroad ties piled uphearingopenwhich road?
B.0098704Please add bike lane on Church StmapPM leftopenfwd again2023
H.0122104CAMPOSame as above, mayor also askedhearing?opendup?
H.0110204CAMPOBridge is fine, spend it elsewheremapopen
??voicemail 2:14 - garbledphoneopencall back
H.0043207Roundabout at Elm and 5themailopen2022
H.0122104CAMPOWiden US-64, senator letter attachedemail?openlink 3 rows

One tab per division. Duplicates linked by hand. Sorting is the review process.

What arrives now NCDOT P8 stakeholder report, Projects by support tab filtered to Division 4: vote rollup, most and least popular projects, and a ranked project table with up, down, net, total, comments, and sentiment

NCDOT's P8 stakeholder report, filtered to Division 4. Every project in the division ranked by votes, with net support, comment counts, and a sentiment bar. Sort by most positive, most negative, or least attention. Hide the projects nobody touched. Export the rows when someone needs them.

One report, scoped to whoever is reading it

The same report serves the whole program. A "Viewing" selector switches between statewide and any of the 53 divisions, MPOs, and RPOs, and every number, chart, and list on the page re-scopes to that area. Comments, projects, and votes are cross-referenced to the boundary layers from setup, so a project on a boundary counts for both areas that share it.

NCDOT P8 stakeholder report, statewide view: 2,180 comments across 53 divisions, comments by division bar chart, support versus opposition donut at 78 percent supported, and comments by project category
Statewide · all divisions

The program view

Total comments, comments by division and planning organization, support versus opposition across all votes, and comments by project category. Download the spreadsheet or print the report from the top bar. Tabs below switch between comments and responses, projects by support, and the project map, with AI summaries toggled on.

The same report with Viewing set to Division 4: 165 comments in the Division 4 area, 894 votes at 94 percent supported, comments by category led by rail, and a comment search box
Viewing · Division 4

The division view

Pick a division, MPO, or RPO and the report becomes theirs: their comment count against the program total, their support split, their category mix. Below it, comments can be searched by name, road, or town, filtered by project or response status, and grouped by project, by speaker, or rolled up by legislative district for elected officials.

NCDOT STIP 2028–2037

What NCDOT's STIP public comment period produced

English and Spanish, an interactive project map, searchable project pages, and three funding tiers explained in plain language. Results as published in the NCDOT STIP case study.

3,800+
survey responses
1,100+
comments, each tied to a project
~7,000
content views
459
residents subscribed for updates
Bring it to your next cycle

Start with the layers you already have

A project feature layer and a set of boundaries, as KML or a feature layer, are enough to stand up a STIP, TIP, or priority-program engagement. Comments are matched to projects as they come in, and each division gets a summary it can act on.

PublicInput · resources.publicinput.com · Prioritization Module, NCDOT STIP case study. Also see the NCDOT STIP engagement story.