How to find NYC construction jobs before your competition
Every construction job in New York City starts with a piece of paper — a filing with the Department of Buildings. By the time a GC is picked and ground is broken, that filing has already been public record for weeks. The question for any contractor trying to grow isn't whether the data exists. It's when you see it.
The two moments that matter
NYC's Department of Buildings (DOB) tracks two separate events on every construction job:
- Job filing. The owner or developer submits plans. The project is real — there's a designer, a scope, a budget — but no permit has issued yet. A general contractor may not even be chosen.
- Permit issuance. DOB approves the filing (often after a plan exam and objections). Work can begin. At this point the GC is usually already on the job.
The window between these two events averages two to six weeks for most alteration and new-building jobs, longer for anything that touches landmarks or zoning. That window is the opportunity. If you find the filing, you have a chance to reach the owner before the bid list is set. If you wait for the permit, you're selling to someone who already has a GC.
Where the data lives
DOB publishes filings through DOB NOW and the NYC Open Data portal. The core feed for new filings is the Job Application Filings dataset, updated daily. Permit issuance lives in a second feed. Both are free to query. Neither is easy to work with — the schemas are wide, the field names are cryptic, and the data needs joining to be useful.
If you're comfortable with SQL and the Socrata API, you can build your own pipeline. Most GCs don't have a data engineer, so the practical options are:
- Download a CSV weekly and open it in Excel. Fast to start, painful to repeat, and you miss filings for 5–6 days at a time.
- Use a permit data service. Some sell data dumps; some, like PermitPipeline, grade each filing and send you only the ones worth calling.
- Hire a business-development hire to monitor it manually. This is what large firms do. It costs $80K+ a year and the person still misses things.
What to look for in a filing
Not every filing is a real job. Most sidewalk-shed renewals, single-fixture plumbing updates, and after-hours variance requests are noise. The filings that matter share a few characteristics:
- Project value above $250K. Below that, it's usually a handyman-scale job that won't support a real GC fee.
- Project type: Alteration Type 1, New Building, or Demolition. These are the categories where a full GC is typically hired.
- Owner isn't a repeat developer with an in-house construction arm. Filter out the big institutional owners who never put a job out to bid.
- Status is "Filed" or "Plan Exam in Progress" — not "Permit Issued." Once it's issued, you're late.
What to do when you find one
A filing gives you the owner's name, the project address, the estimated cost, the project type, and the architect of record. That's enough to reach out cleanly:
"I saw your filing for [project address] last week. We've completed three similar alterations within five blocks in the past year. If you're still building out your bid list, I'd love a quick call."
That message works because it's specific, timely, and not generic. The worst thing you can do with this data is send the same templated email to every owner in a dataset. Most GCs who try to scale permit-lead outreach kill their own response rate inside 30 days by doing exactly that.
The grading problem
NYC generates roughly 200,000 job filings a year across all five boroughs. Even after you filter out the noise, you're left with 300–500 real jobs a week. No GC — even a large one — can follow up on all of them. You need a ranking system that reflects which filings are actually worth your time.
That's the problem PermitPipeline solves. We score every new filing A+/A/B based on project value, project type, filing status, and owner profile, then email the top-graded leads to GCs every business day. You get 20–50 filings a day instead of 400, and the ones you get are the ones most likely to convert. See the feed and try a free sample →
Want to see what today's NYC filings look like?
We'll send you a free sample digest — yesterday's top 20 A+ leads, graded and formatted for a GC.
Get the sample →