Staff Vacancy User Resources
This page contains the core tools you need to complete your Staff Vacancy submission in NJSLEDS. Each resource below is designed to guide you through a specific part of the process—from understanding field rules to formatting your file. For additional help and resources, visit the Key Documents page, or contact the NJSLEDS Help Desk.
| Resource | Description | Type | Updated |
|---|---|---|---|
| Staff Vacancy Data Handbook | Field definitions, validation rules, and submission structure | Aug 6, 2026 | |
| Submission Template A | Includes headers and lookup values | Excel | Aug 13, 2026 |
| Submission Template B | Header row only | Excel | Aug 6, 2026 |
| Webinar Slides | Submission process walkthrough, key reminders, and common errors | Apr 16, 2026 | |
| Frequently Asked Questions | Common questions about submission timing, field issues, and file errors | Mar 16, 2026 |
What’s New for 2026-2027
Two fields were added to the Staff Vacancy submission this year: NumberOfExternalHires and NumberOfInternalHires. They tell the NJDOE how a position was filled once it closes. See Reporting Internal and External Hires below for who counts in each field and when to populate them.
Choosing the Right PositionType
Staff Vacancy reporting covers teaching positions only. It captures vacancy activity for those positions, so you create a record only for a teaching position that was vacant, newly created or eliminated. You do not create a record for every filled position, and you do not report non-teaching staff in this collection. The roles that qualify as teaching positions are defined by the valid job codes in the Job Codes and Job Code Subcategories document.
PositionType tells NJSLEDS what kind of activity each record represents. There are four valid values.
| Value | What it means | When to use it |
|---|---|---|
| 1 | No vacancies to report | The school has no vacant, new or eliminated positions to report for this submission. Use a single record and leave all other fields blank. |
| 3 | New Teaching Position | A teaching position that did not previously exist was created, for example because of enrollment growth or a new program. |
| 4 | Eliminated Position | A full-time teaching position will no longer be encumbered in future school years. Staff may be reassigned, so this does not necessarily reduce your staff count. DistrictPositionID is not required for eliminated positions. |
| 5 | Vacant Position | A full-time position has no incumbent teacher and is open for filling. |
Note: PositionType 2 (Anticipated Retirement) was retired and is no longer a valid value.
PositionType 1 means “nothing to report”
PositionType 1 is a single placeholder that tells NJSLEDS a school had no vacancy activity for this submission. It is not a per-position code, so you do not need a PositionType 1 record for each teacher, each filled position or each role in the school.
- If a school had no vacant, new or eliminated positions, submit one PositionType 1 record for that school and leave JobCode, JobCodeSubcategory, DistrictPositionID, PositionOpenDate and PositionClosedDate blank.
- If a school did have vacancy activity, report those positions using PositionType 3, 4 or 5 and do not include a PositionType 1 record.
- Populating any other field on a PositionType 1 record will return an error during file processing.
Understanding RecordID
RecordID is a system-generated identifier added to Staff Vacancy submissions in March 2026. It works much like a SID or SMID. NJSLEDS assigns a unique eight-digit RecordID to each vacancy record so the system can match and update the correct record over time.
When you submit a new vacancy record, leave the RecordID column blank. NJSLEDS assigns the RecordID automatically once your file processes. After processing, export the Submission Records report to see the RecordIDs assigned to your records, then save them in your local tracking system.
When you later need to correct or update an existing record, include its assigned RecordID in your file. NJSLEDS reads a populated RecordID as an update to that specific record, and a blank RecordID always creates a new one. Reusing the correct RecordID is what keeps an update from being recorded as a duplicate vacancy.
If you see a RecordID error
What you see: The Record ID uploaded for this record does not exist in NJSLEDS.
What it means: The RecordID in your file does not match a RecordID that NJSLEDS has issued. This usually happens when a RecordID is mistyped, or when a new record is uploaded with a RecordID already filled in.
How to fix it: If you are reporting a new vacancy, leave RecordID blank and let NJSLEDS assign one. If you are updating an existing record, export the Submission Records report to confirm the correct eight-digit RecordID, then re-upload your file with that value.
Reporting Internal and External Hires
NumberOfExternalHires and NumberOfInternalHires were added for the 2026-2027 school year. Together with NumberOfApplicants, they show how a teaching position was eventually filled, which helps the NJDOE track hiring outcomes and workforce pipeline trends across the state.
Both fields apply to new teaching positions and vacant positions, meaning PositionType 3 and PositionType 5. Leave them blank while a position is still open, then populate them at the point you report a PositionClosedDate for that record. Neither field belongs on a PositionType 1 or PositionType 4 record, and populating them there will return an error during file processing.
The difference between the two comes down to where the person was working on the day they were hired.
| Field | Who to count | Examples |
|---|---|---|
| NumberOfExternalHires | Anyone who was not employed by your district at the time of hire. | A teacher hired away from another district, someone returning to the workforce after time away, or a teacher new to the profession. |
| NumberOfInternalHires | Anyone already working for your district who was reassigned or promoted into the position. | A lateral transfer, a promotion, or a teacher moving over from another school in the same district. |
Use the value 0 when a closed position had no hires of that kind. A position filled entirely from outside the district would report the external count and a 0 for internal hires. Both fields accept whole numbers only, with no decimals or commas.
Hires cannot outnumber applicants
NJSLEDS adds NumberOfExternalHires and NumberOfInternalHires together and compares the total against NumberOfApplicants on the same record. If the combined hire count comes out higher than the applicant count, the record will not process. Reviewing all three values together before you upload is the quickest way to keep this from turning into a correction cycle later.
If you see a hire count error
What you see: The sum of NumberOfExternalHires and NumberOfInternalHires cannot be greater than NumberOfApplicants.
What it means: The record reports more people hired than people who applied. This usually points to an applicant count that was entered before the applicant pool was final, or to a hire being counted in both the internal and external columns.
How to fix it: Check the total number of applicants and the number of people actually hired for this position in your local source system. Confirm that each hire is counted once, in either the internal or the external field. Correct the values at the source, then re-upload the record to NJSLEDS.
An internal hire may open a second vacancy
When you fill a position by moving a teacher from somewhere else in the district, the role that teacher left behind becomes a vacancy of its own. Report that opening as a separate vacancy record with its own DistrictPositionID and PositionOpenDate.
Field Guidance
Quick reference for each field in the Staff Vacancy submission file. For full details, see the Data Handbook.
| Field | Definition |
|---|---|
| RecordID | A system-generated, eight-digit identifier NJSLEDS assigns to each vacancy record. Leave blank for new records; reuse the assigned RecordID when updating an existing record. |
| SchoolID | The school code from the district’s County District School Information. |
| PositionType | The employment-related status of types of teaching positions within a district or school. See “Choosing the Right PositionType” above for the valid values. |
| JobCode | The NJDOE job code associated with the position type. |
| JobCodeSubcategory | The subcategory linked to the job code associated with the position type. |
| DistrictPositionID | Assigned by the district and used to track staff positions within a district over time. |
| PositionOpenDate | The year, month, and day on which a position opened. |
| PositionClosedDate | The year, month, and day on which a position closed. |
| NumberOfApplicants | Total count of applicants who have applied for current job vacancies or new teacher positions within the district or school. |
| NumberOfExternalHires | Total count of candidates hired from outside the district to fill the position. Populate when you report a PositionClosedDate for a PositionType 3 or 5 record. |
| NumberOfInternalHires | Total count of candidates already employed by the district who were reassigned or promoted into the position. Populate when you report a PositionClosedDate for a PositionType 3 or 5 record. |
⚠️ Common Issues to Avoid
- Report teaching positions only, as defined by the valid job codes in the Job Codes and Job Code Subcategories document. Do not include positions that fall outside that list.
- Use PositionType 1 only when a school has no vacancies to report, and submit a single record with all other fields blank. Do not create a PositionType 1 record for every position.
- Leave RecordID blank for new records. Reuse the assigned RecordID only when updating a record you already submitted.
- Each row must represent a unique combination of SchoolID, PositionType, JobCode, JobCodeSubcategory, and DistrictPositionID
- Dates must be formatted as YYYYMMDD
- PositionClosedDate cannot be earlier than PositionOpenDate
- Do not leave NumberOfApplicants blank — enter 0 if no applicants have applied
- Leave NumberOfExternalHires and NumberOfInternalHires blank while a position is still open, then populate both when you report a PositionClosedDate
- Use the value 0 rather than leaving a hire field blank when a closed position had no hires of that kind
- Count each hire once, in either the internal or the external field, never both
- Do not report hire counts on PositionType 1 or PositionType 4 records
Official Site of The State of New Jersey