PERM Tracker
Live DOL data · Automatic deadlines
Skip to main content

Updated

Every PERM deadline, worked out from the dates you enter

Free case management for immigration attorneys and their teams. Enter a case's dates once; the deadlines, reminders and calendar follow.

permtracker.app/dashboard
The dashboard's Deadlines panel for eight sample cases: none overdue, an RFI response due this week, an I-140 filing and a filing window this month, and nine deadlines later.
Sample cases. The employers are invented.
permtracker.app/cases
A sample case's card on the cases page: Juniper Biologics, ETA 9089 stage, RFI response due in 7 days.

Every case on one line

The timeline draws each case from its wage request to the I-140 with today marked, so a crowded month shows before it arrives.

  • Coloured by stage: wage determination, recruitment, ETA 9089, I-140
  • Dates too close to tell apart share one numbered square
  • Three months to two years at a glance, opened at today
permtracker.app/timeline
The case timeline with eight sample cases on one screen: wage determinations, recruitment, ETA 9089 filings, an I-140 and an RFI response due.
Sample cases. The employers are invented.

Each case on a card

Stage, next deadline and days left at a glance, with filters, sorting, search and bulk actions.

  • Sorted by the next deadline unless you choose otherwise
  • Import cases from a JSON file, export to CSV or JSON
  • Calendar sync switched on or off per case
permtracker.app/cases
The cases page showing the sample cases as cards, each with its stage, its next deadline and the days left.
Sample cases. The employers are invented.

One page for the whole case

What to do next, every step done and still ahead, the wage determination and the recruitment report.

  • The next action and its due date at the top
  • Every milestone from the wage request to the I-140
  • The recruitment summary written out for the ETA 9089, ready to copy
permtracker.app/cases/juniper
A sample case's page: the RFI response due in 7 days, the timeline of completed steps, the prevailing wage and quick stats.
Sample cases. The employers are invented.

Type the dates. The rest is worked out.

Enter the determination date and the wage expiration fills in. Start the job order and its end date, the notice period and the filing window follow.

  • Every date checked against 20 CFR 656 as you type
  • An impossible date is stopped with the reason, such as a filing inside the 30-day quiet period
  • Worked-out fields are marked, and yours to change
permtracker.app/cases/tidewater/edit
The case form for a sample case: the wage expiration worked out from the determination date, and the recruitment deadline with 84 days left.
Sample cases. The employers are invented.
Example case computed by the app

You enter

  • Wage determination Mar 16, 2026
  • Job order and notice posted Apr 6, 2026
  • First Sunday ad Apr 12, 2026
  • Second Sunday ad Apr 19, 2026

It works out

  1. Apr 20, 2026 Notice of filing can come down 20 CFR 656.10(d)
  2. May 5, 2026 Job order can come down 20 CFR 656.17
  3. Jun 4, 2026 Filing window opens 20 CFR 656.17
  4. Jun 30, 2026 Wage determination expires 20 CFR 656.40(c)
  5. Oct 3, 2026 Filing window closes 20 CFR 656.17

When DOL certifies it, you enter May 17, 2027

  1. Nov 12, 2027 Last day to file the I-140 20 CFR 656.30(b)(1)

Reminders before every deadline

30, 14, 7, 3 and 1 day out by default, in the app and in one email a day with the most urgent first.

  • Your own reminder days, set in Settings
  • Browser notifications if you want them
  • Every reminder links to its case
permtracker.app/notifications
The notifications page with the sample firm's reminders: an I-140 filing due in 14 days and an RFI response due in 7.
Sample cases. The employers are invented.
The reminder email
The morning reminder email to the sample attorney: an RFI response due in 7 days and an I-140 filing due in 14, most urgent first.

On your calendar, too

Month, week, day and list views of every deadline, and each one sent to Google Calendar once you connect it.

  • Each kind of deadline switched on or off
  • Events move when a date changes
  • Switching a kind off removes its events
permtracker.app/calendar
The calendar's month view for October 2026 with the sample firm's RFI response and ETA 9089 expiration.
Sample cases. The employers are invented.

Ask about your caseload

The assistant reads your cases and answers in plain words. It can update a case or sync a calendar, and asks before it changes anything.

  • Finds cases by stage, deadline or employer
  • Asks first before every change
  • Says plainly that it isn't legal advice
The assistant answering which sample cases have something due in the next two weeks: the Juniper Biologics RFI response on October 8 and the Cobalt Freight Systems I-140 on October 15.
Sample cases. The employers are invented.

Put PERM Tracker on your firm's site

Clients check their own case on your page. Free, and it links back to their full record.

yourfirm.com/check-your-case
the code for this checker, ready to paste Every tool you can embed

A badge for a verified firm

  1. 1 Claim your firm's page
  2. 2 We check the claim
  3. 3 Paste the badge

It says “Verified firm” only after we've confirmed the claim, and links to your record.

Find your firm

What a missed deadline costs

PERM deadlines are counted in days. These are the 5 that lose a case, and what the app does about each.

  • RFI response

    DOL's request for information gives 30 days. A late answer and the case is denied.

    Due date set from the RFI date, with reminders 30, 14, 7, 3 and 1 days before.

  • Wage determination expiry

    A prevailing wage determination expires under 20 CFR 656.40(c). Recruitment has to begin before it does, or the case starts over.

    Expiry worked out from the determination date under DOL's rules, and the day recruitment has to begin by.

  • ETA 9089 filing window

    It opens 30 days after the last recruitment step and closes 180 days after the first. Miss it and recruitment is redone.

    Open and close dates from the recruitment dates and the wage expiry.

  • I-140 filing

    A certification is valid for 180 days (20 CFR 656.30). Miss it and the labor certification lapses.

    The last filing day, as DOL prints it, set from the certification date.

  • Recruitment timing

    Sunday ads, the job order and the notice of filing each have their own timing rules. A gap invites an audit.

    Every step dated, business days counted where the rule says so.

Your client data, protected

Sensitive fields encrypted
AES-256-GCM on the employer's FEIN and on sign-in tokens
Database
Convex, which holds a SOC 2 Type II report
Session
Signed out after 30 minutes without activity
Isolation
Each account's cases are visible to that account only
Export
Every case as CSV or JSON, at any time

We don't sell your data or train AI on it.

Check a case, or track a caseload

Both free. The lookup needs no account; the app takes a few minutes to set up.

Or browse the case data, no account needed