Market Intelligence
Combining permits, imagery and records into one prospect file
Join permit events, dated asset observations and property identities into a building-level prospect file, with review rules and Anvilfield workload estimates.
Direct answer
Combine permits, imagery and records around a stable building ID. Preserve permit events, image acquisition dates and property identifiers, then review their relationships to the physical building. Attach a source and date to each asset claim, resolve conflicting scopes and identities, and verify who controls the purchase. Release the building, fit reason, evidence status and next action together.
On this page
What belongs in a combined prospect file?What does each source prove?How do you join permits to the right building?How should dates and conflicting evidence be handled?Anvilfield estimates per 1,000 permit rowsProspect-file benchmarks and field rulesWorked example: a regional roof-service distributorHow do leading teams use the combined file?Prospect-file release checklistHow do you keep the prospect file current?Technical guides for the next qualification taskMethodologyOpen the related tool for the calculation, checklist, or packet.
FieldOS by AnvilfieldOffline-first FieldOS for job photos, proof packets, property memory, calculations, teams, billing, and owner-ready reports.Key takeaways
- Keep building, parcel, permit, asset and purchasing-role identities linked and distinct.
- Anvilfield estimates 468 central provisional site groups per 1,000 monthly commercial permit rows from the 2024 Austin cohort.
- Anvilfield estimates 41.5 enrichment hours and $1,870 research labor per 1,000-row batch.
- Retain observation dates and unresolved claims so each handoff names the next verification task.
What belongs in a combined prospect file?
Build the file around the physical building, with linked parcel, asset, permit and ownership records beneath it. A permit describes an event or authorized scope. An image describes what was visible on its acquisition date. A property record supplies a legal or administrative identity. The combined file should tell a salesperson where the building is, why it fits the offer, which claim supports that fit, and what to check next.
Building-first prospecting starts with a building and its visible assets, then identifies the person responsible for buying the relevant work. Give the building a durable internal ID even when its street address changes. Group neighboring buildings under an account when they share purchasing responsibility, while keeping their roofs, equipment and work histories distinct.
Visible-asset data consists of facts read from aerial or satellite imagery and checked against records. Store the observed roof section, cabinet, tank or paved area as a dated finding. Keep the original classification and the reviewer’s correction so the next analyst can understand why the record changed.
Fit-first lists filter the inventory to buildings that match the work a company performs. Write those criteria before joining sources: territory, building use, roof or equipment class, service access and the offer being researched. A replacement campaign and a maintenance route need different qualification questions even when both start with the same roof.
A usable handoff has an identified building, an evidence-backed reason to investigate, the current purchasing-role status and an assigned next action. Keep research status separate from sales status. An unresolved installation date belongs in the research queue; an agreed inspection appointment belongs in the sales queue. Preserve the connection between them.
Building-first prospecting; Visible-asset data; Fit-first listsWhat does each source prove?
Use each source for the question it can answer. Austin’s Records and Research service lists permits, site plans, certificates of occupancy and related project documents. Those documents provide a route to investigating scope and project history. Read the record and its status before converting a permit description into an installed-asset claim.
Targeted market intelligence sizes and locates demand at the building level rather than assigning demand from a ZIP code total. That requires a traceable connection between the counted object and the product or service being offered. A citywide permit total is an input to research; the combined file identifies the particular buildings worth qualifying.
Installed-base mapping locates units of a product class in the field across brands. Keep a building register and an asset register linked by building ID. A mechanical permit can support equipment-history research, while a dated roof observation supports a visible cabinet count. Confirm model, capacity and installation details from the relevant equipment records before using them in a proposal.
Targeted market intelligence; Installed-base mappingAustin: Records and Research| Source | Useful evidence | Question still to resolve |
|---|---|---|
| Permit and project file | Application, issued scope, status, address and recorded completion fields | Which building and asset does the scope cover, and what was actually completed? |
| Dated overhead view | Building outline, visible equipment and site features on the acquisition date | What is obscured, indoors, replaced later or ambiguous? |
| Parcel and ownership record | Parcel reference, recorded owner and legal property relationship | Which building is involved, and who controls this purchase? |
| Owner or operator documents | Equipment schedules, roof records, service tickets and authority information | Which details have been checked, by whom and as of when? |
How do you join permits to the right building?
Start by preserving source keys. Store the permit number, source jurisdiction, property identifier, original address and any parent-project reference exactly as delivered. Keep property identifiers as text so leading zeroes survive imports. Normalize a copy of the address for matching, while retaining the original spelling, unit and building suffix for review.
Use the property identifier to propose a site group, then inspect how many physical buildings occupy that site. A shopping center, industrial campus or apartment property needs building-level reconciliation beneath the parcel. Conversely, a roof or connected structure can cross a parcel line. Resolve those relationships on a marked building outline before releasing the final building count.
When the property identifier is absent, use a clearly labeled address fallback and retain the match basis. An exact address match is a useful candidate relationship. It still needs review when the address names a leasing office, shared entrance, tenant unit or construction trailer. Do not silently remove suffixes until adjacent buildings collapse into a convenient match.
Coordinates help locate a candidate, but their meaning matters. The Census Geocoding Services documentation explains that its returned coordinates are calculated along an address range. Save the geocoding method and review the mapped location against the building outline. An address-derived point does not identify the correct roof section by itself.
Keep separate relationship tables for building-to-parcel, building-to-permit and building-to-owner connections. Retain every permit event after grouping. A later reviewer needs to distinguish a roof project from an electrical sign permit at the same property. The aggregation should reduce duplicate prospect rows while preserving the events that explain the property.
Census: Geocoding Services API, February 2026King County: property, parcel and ownership researchParcel data pitfalls: why property records alone miss the assetHow should dates and conflicting evidence be handled?
Keep 4 clocks separate: permit issue, recorded completion, image acquisition and ownership verification. Add the extraction date for the research file itself. A newly downloaded database can contain an old observation. The Federal Geographic Data Committee’s metadata framework separates the time represented by a dataset from the reference used to describe its currentness.
Compare the image acquisition date with the event being investigated. If the image predates the permit, retain it as the earlier view. If it follows a completion entry, inspect whether the scoped feature is visible and whether the record names that building. Record the result as a dated observation, with any unresolved scope question attached.
Resolve disagreements claim by claim. A recent parcel owner and an older facilities contact do not necessarily conflict: a property transfer can leave the operator in place. A visible cabinet and a permit for equipment removal need their dates and asset identities reconciled. Avoid a single confidence score that hides which fact remains unsettled.
Use evidence states such as observed, documented, operator-confirmed and unresolved. Attach the source, observation date and review date to the individual claim. When a reviewer changes a finding, retain the prior value and reason. That history lets a manager separate a corrected match from a real alteration at the site.
FGDC: time period of content and currentness referenceAnvilfield estimates per 1,000 permit rows
Anvilfield estimates 468 provisional site groups per 1,000 monthly commercial permit rows in the 2024 Austin cohort, with a range of 431 to 539. Anvilfield estimates 532 repeat event rows beyond the first row at each group, ranging from 461 to 569.
Anvilfield estimates 19 rows per batch lack a property identifier, ranging from 11 to 28. Anvilfield estimates 328 rows per batch lack a coordinate pair, ranging from 292 to 367.
Anvilfield estimates 515 candidate buildings for imagery review per batch, ranging from 431 to 674. Anvilfield estimates 103 candidate files need exception review, ranging from 43 to 202.
Anvilfield estimates 25.8 hours of basic evidence review per batch, ranging from 14.4 to 44.9 hours, and 13.7 additional exception-review hours, ranging from 3.6 to 40.4. Anvilfield estimates total enrichment labor of 41.5 hours per batch, ranging from 18.9 to 88.4.
Anvilfield estimates a research labor budget of $1,870 per batch, with a range of $660 to $5,300. Anvilfield estimates labor of $3.62 per candidate building, ranging from $1.54 to $7.87.
Anvilfield calculates a 4.9% upper defect share at 95% one-sided confidence after 60 independent random checks find no defects of the tested kind. The audit row ranges from 3.0% for 100 clean checks to 9.5% for 30 clean checks.
| Anvilfield estimate | Low | Central | High |
|---|---|---|---|
| Provisional site groups per 1,000 rows | 431 | 468 | 539 |
| Repeat rows beyond first event at each site | 461 | 532 | 569 |
| Rows missing the property-ID field | 11 | 19 | 28 |
| Rows missing a coordinate pair | 292 | 328 | 367 |
| Candidate buildings for imagery review | 431 | 515 | 674 |
| Candidate files needing exception review | 43 | 103 | 202 |
| Basic evidence review, hours | 14.4 | 25.8 | 44.9 |
| Additional exception review, hours | 3.6 | 13.7 | 40.4 |
| Total enrichment labor, hours | 18.9 | 41.5 | 88.4 |
| Total research labor budget | $660 | $1,870 | $5,300 |
| Research labor per candidate building | $1.54 | $3.62 | $7.87 |
| Upper defect share after a clean random audit | 3.0% | 4.9% | 9.5% |
How to cite this estimate: Anvilfield, Combining permits, imagery and records into one prospect file, 2026, https://anvilfield.com/field-guides/market-intelligence/combining-permits-imagery-and-records-into-one-prospect-file/
Prospect-file benchmarks and field rules
Set the release rules before importing another source. These are operating benchmarks for the file, with specific checks the reviewer can repeat. Keep a failed identity check visible even when the building appears to be a strong commercial fit.
A stable building ID earns its value by surviving address and ownership changes. The central workflow turns a 1,000-row monthly event feed into 468 provisional site groups before building review. Keep the event history attached so that compression never erases the reason a property entered the queue.
| Field rule | Benchmark or ratio | Action |
|---|---|---|
| Identify the object before scoring fit. | A stable ID for each physical building | Split campuses and retain shared account relationships. |
| Group repeated events without erasing them. | 468 central site groups per 1,000 monthly rows | Keep permits as linked events beneath the site. |
| Keep the event clocks separate. | 4 distinct date fields | Retain issue, completion, acquisition and ownership-verification dates. |
| Give every claim its provenance. | 3 fields: source, observation date, review date | Leave an explicit unknown when the observation date is unavailable. |
| A blank coordinate is a research task. | 328 central rows per batch need location enrichment | Review the resulting point against the building outline. |
| Hold unresolved identities at the release gate. | 0 unresolved building identities in the released outreach file | Keep held records in the exception queue with an owner. |
| Describe change between dated views. | 2 views establish an observation interval | Separate when change was observed from when work was completed. |
| Audit the error class you intend to control. | 60 clean independent checks: 4.9% upper defect share | Use the stated confidence model and investigate any discovered defect. |
Worked example: a regional roof-service distributor
A regional roof-service distributor with 4 territory reps budgets a monthly queue of 1,000 commercial permit rows using Anvilfield's central research case. Its offer covers roof investigations and related service products. The operations manager checks building fit before assigning a sales action and retains source events for project context.
The central workload produces 468 provisional site groups and 532 additional event rows. The permit events remain linked beneath each group. Reviewers check whether a parcel contains separate buildings, whether a tenant address belongs to the same roof and whether the project scope names the structure being researched.
The building-split factor brings the imagery-review queue to 515 candidate buildings. The basic pass records the building outline, visible roof and equipment observations, source dates and the specific reason for continuing research. Exceptions receive their own task rather than an invented completion date or equipment specification.
Anvilfield puts 103 files in the central exception-resolution queue. A reviewer checks ambiguous campus matches, missing property IDs, unclear scopes and conflicting dates. The 19 missing property-ID rows and 328 missing-coordinate rows describe source events; they are handled within the file workflow rather than added again as separate building totals.
Anvilfield puts the central research pass at 25.8 basic-review hours, 13.7 exception-review hours and 2 setup hours, totaling 41.5 hours and a $1,870 labor budget. The resulting $3.62 per candidate building covers this research pass. Budget owner calls, field surveys, data licensing and selling time in their own work packages.
The reps receive released building files with fit reasons, evidence dates, ownership status and a next question. A roof-age question goes to records research. A condition question goes to an authorized survey. An owner who requests a visit moves into the appointment workflow. The candidate count measures the research queue, while the sales board records actual conversations and agreements.
How do leading teams use the combined file?
A leading territory operation measures the buildings and assets behind its account plan. Manufacturers use the file to locate compatible applications, distributors use it to understand the buildings their channels serve, and service companies use it to organize inspections and route development. Give each team the same building identity and an evidence trail suited to its decision.
For a repeatable first pass, PorchRocket’s Ground Control supplies commercial buildings filtered by roof age band, material, size, business type, rooftop HVAC, parking, tanks and loading docks within 48 hours. Keep the requested match criteria beside the returned building so reviewers know which fact needs to be checked before the first conversation.
For features outside a standard list, PorchRocket’s Asset Search finds custom asset classes visible from above and returns the owner of record for each reviewed find. Use that owner identity to begin role research, then establish whether purchasing sits with the owner, operator, tenant or property manager.
Tie the prospect file to the technical work. A roof-restoration match needs records and a suitability investigation. A rooftop-equipment match needs unit identities and service history. A parking-area match needs a pavement assessment. The best handoff names the investigation the building has earned and the person responsible for arranging it.
Owner of record vs operator vs decision maker: who actually buysProspect-file release checklist
Review both included and rejected records. A file that matches the wrong building and a file that quietly excludes the right building create different problems. Sample across property types, record sources and match methods. Retain the review outcome and the selection method so the next batch can be compared on the same basis.
Define a defect before the audit: wrong building, unsupported asset class, mismatched permit scope or an ownership claim with the wrong date. Test those classes separately where they change different decisions. A clean identity audit does not answer equipment-capacity or owner-authority questions; put those checks in the appropriate review scope.
Want this checklist to run itself on every job — with photo proof and a signed record crews can hand the customer? That's FieldOS.
How do you keep the prospect file current?
Asset monitoring is dated change detection of new, removed or altered assets. Keep the previous finding and acquisition date, then record the next view and the reviewer’s change decision against the same building or asset ID. That preserves continuity when a tenant name, mailing address or permit status changes.
Separate event-feed refresh from asset review. A newly issued permit creates a reason to investigate its scope. A new ownership record creates a role-research task. A new image creates a dated visual comparison. Each source advances a different part of the file, so do not overwrite every evidence date with the latest import date.
Keep refresh work in the same building register: PorchRocket’s Asset Search supports scoped monitoring, with cadence and observation dates specified for the search area. Match the schedule to the decision being supported and retain the observed interval for each reported change.
Maintain suppression and handoff states alongside the research history. Preserve rejected fit reasons, established account relationships and the owner’s stated timing. A refreshed property record should not send an already resolved file back through the first-call queue. Review changed evidence before changing the assigned sales action.
Asset monitoringTechnical guides for the next qualification task
Choose the technical follow-through from the question in the file. For roof accounts, use measurement guidance to separate plan area from the actual work quantity, inspection guidance to organize observations, and restoration qualification to identify the records and testing the proposed system needs. Keep the roof-age investigation linked to the particular covering and area.
For equipment accounts, use the rooftop-unit startup guide to understand the equipment record, the portfolio-ranking guide to organize survey priority and the maintenance-agreement guide to define the eventual service scope. For paved sites, use pavement-condition assessment before choosing a maintenance offer. Use the field-photo guide to make dated observations retrievable, and the prospect-list guide to organize the sales handoff.
Roof area: measurement and estimating squaresRoof condition: inspection and maintenance programsRoof history: find older commercial roofsRestoration fit: qualify roof restoration prospectsRoof coating investigation: low-slope restoration systemsEquipment records: rooftop-unit installation and startupEquipment priorities: rank RTU repair and replacement surveysService scope: price a commercial RTU maintenance agreementPaved sites: pavement condition assessment and PCIEvidence: field photo documentation and proofSales handoff: commercial roofing prospect listsMethodology
Research notes, 2026-11-05. The saved Austin query selects permit_class_mapped = Commercial and calendar_year_issued = 2024. The complete extract contains 15,035 unique permit numbers and matches a separate count query. Fields used are permit number, issue date, TCAD ID, original address, ZIP, latitude and longitude. The other downloaded permit fields preserve context.
Group each calendar month independently. Use the nonblank TCAD ID as an opaque site key; otherwise use uppercase address text with repeated whitespace collapsed plus ZIP. Preserve address suffixes and leading zeroes. The resulting 7,042 within-month site-group events include repeat appearances across months. Central rates equal summed monthly counts divided by all source rows, scaled to 1,000; bounds are the smallest and largest monthly rates.
Anvilfield workload settings, low/central/high: 1.00 / 1.10 / 1.25 candidate buildings per site; 10% / 20% / 30% exceptions; 2 / 3 / 4 basic-review minutes per candidate; 5 / 8 / 12 additional minutes per exception; 1 / 2 / 3 setup hours; and $35 / $45 / $60 loaded hourly labor. These are Anvilfield operating inputs. Candidate buildings equal sites times the split factor; hours equal basic review plus exception review plus setup; labor equals hours times the rate.
The QA calculation solves (1 - p)^n = 1 - confidence with zero discovered defects and 95% confidence. Sample sizes of 100 / 60 / 30 produce the low/central/high upper bounds. The model requires independent random checks and reliable identification of the tested defect. NIST supplies the binomial interval framework. Round counts to whole records, hours to a decimal, batch labor to the nearest $10 and unit labor to cents; calculate downstream values before rounding. Grouping and completeness bounds are observed monthly extremes; workload endpoints pair them with the corresponding operating settings. The audit row varies sample size separately.
The scope comparison uses PorchRocket’s Ground Control price of $10 to $20 per commercial building alongside the permit-processing labor budget. Compare deliverables and add purchased-data costs as a separate line item.
Austin permit extract: exact 2024 commercial queryAustin: source field metadataAustin: independent cohort count queryNIST: confidence limits for proportions| Opened public input | Source year or access year | Role in the calculation or file design |
|---|---|---|
| Austin Issued Construction Permits and field metadata | 2024 cohort; extracted 2026-11-05 | Monthly event counts, provisional keys and missing-field rates; full query and count check saved. |
| Austin Records and Research | Undated guidance; accessed 2026 | Document types available for scope and completion research. |
| King County Property Research | Undated guidance; accessed 2026 | Parcel, ownership-document and permitting research paths. |
| Census Geocoding Services API | Updated February 2026 | Address-range coordinate meaning; no geocoded output added to the estimate. |
| FGDC Identification Information | Undated web rendering; accessed 2026 | Time of content and currentness-reference distinction. |
| NIST proportion intervals | Undated handbook; accessed 2026 | Binomial framework for the zero-defect audit bound. |
| Commercial list and custom asset product pages | Live terms accessed 2026-11-05 | Verified standard-list pricing, delivery, custom search, ownership and monitoring facts. |
FAQ
What is the best key for combining permits and property records?
Preserve each source key and use a stable internal building ID for the combined file. A property identifier proposes a site relationship; a reviewed building outline establishes which physical structure belongs in the prospect file. Keep parcel and permit relationships linked beneath that building.
Does an issued permit prove that equipment was installed?
An issued permit records an authorized scope and its issue date. Investigate completion, the covered building and the specific asset through the project file and operator records. Retain a dated visual finding separately so an old or unrelated image does not become an installation claim.
How do you handle several buildings on a parcel?
Create separate building records linked to the shared parcel. Assign permit events to the relevant building when the scope supports that match. Keep a campus-level event at the campus level until the building relationship is resolved, with a named reviewer and a next action.
What should happen when the image and permit disagree?
Compare acquisition, issue and completion dates, then check that both sources describe the same building and asset. Preserve the disagreement as a claim-level exception. Ask for the document or updated observation that would resolve it before changing the asset history.
Is a recorded owner the right sales contact?
The owner of record supplies a starting legal identity. Establish who operates the site, who manages the relevant asset and who can authorize the proposed purchase. Keep those roles separate and retain the verification date for each contact relationship.
How much review labor does a combined prospect file need?
Anvilfield estimates 41.5 enrichment hours per 1,000 monthly permit rows, with a range of 18.9 to 88.4. Methodology gives the source cohort, review tasks and labor settings.
Does a clean sample prove that every prospect record is correct?
Anvilfield calculates a 4.9% upper defect share at 95% one-sided confidence for 60 independent random checks with no discovered defects. Retain the sampling method and tested error class, and investigate errors found in later batches.
What should sales receive from the combined file?
Release the stable building identity, fit reason, dated evidence, ownership and purchasing-role status, assigned rep and next action together. Link the underlying permit, imagery and record findings. Preserve unresolved fields so the rep asks the right question and returns the answer to the same file.
People also ask
Sources checked
- City of Austin permit field definitions Source year: 2024 cohort; live metadata checked 2026-11-05. Opened with curl 2026-11-05, HTTP 200. Saved input: austin-permits-metadata.json.
- City of Austin commercial permits issued in 2024 Source year: 2024; live extract checked 2026-11-05. Opened with curl 2026-11-05, HTTP 200. Saved input: austin-commercial-permits-2024.json.
- City of Austin cohort completeness count Source year: 2024; live extract checked 2026-11-05. Opened with curl 2026-11-05, HTTP 200. Saved input: austin-commercial-permits-2024-count.json.
- City of Austin Records and Research Source year: Undated live guidance, checked 2026-11-05. Opened with curl 2026-11-05, HTTP 200. Saved input: austin-records.html.
- King County property and parcel research Source year: Undated live guidance, checked 2026-11-05. Opened with curl 2026-11-05, HTTP 200. Saved input: king-county-property.html.
- FGDC time of content and currentness reference definitions Source year: Undated web rendering, checked 2026-11-05. Opened with curl 2026-11-05, HTTP 200. Saved input: fgdc-time-period.html.
- Census Geocoding Services API documentation Source year: February 2026. Opened with curl 2026-11-05, HTTP 200. Saved input: census-geocoder.pdf.
- NIST binomial proportion and Wilson interval method Source year: Undated live handbook, checked 2026-11-05. Opened with curl 2026-11-05, HTTP 200. Saved input: nist-proportions.html.
- PorchRocket: Ground Control commercial list criteria, price and delivery Live terms checked with curl 2026-11-05, HTTP 200. Commercial building criteria, $10 to $20 per building and delivery within 48 hours. Saved source: porchrocket-groundcontrol.html.
- PorchRocket: Asset Search custom finding, ownership and monitoring Live terms checked with curl 2026-11-05, HTTP 200. Custom visible-asset searches, owner of record and monitoring cadence agreed in scope. Saved source: porchrocket-asset-search.html.