To file an Expression of Interest (EOI) for Ontario Workforce Priority Stream, you need a job offer ID from your employer, then you create or log in to your OINP employer/applicant portal (OP Portal) account and work through the tabs for personal details, work experience, education, language results, and the final declaration before submitting.

In short

  • Only the employer creates the job offer ID — an error in the data can’t be fixed by the applicant, only through withdrawal and resubmission of the job offer.
  • The job offer ID must be linked to the OP Portal profile within 30 days, or the link becomes impossible.
  • The tier from the employer’s lock code must match the tier selected in the OP Portal — otherwise the data won’t line up.
  • License holders and those covered by a collective agreement are exempt from the median wage requirement.
  • Ontario Workforce Priority Stream receives hundreds of thousands of applications every year, but only 10,000–14,000 are accepted.

Job Offer ID: Where an OINP Application Starts

The first step in the application is asking the employer to generate a job offer ID — the identifier for the job offer, without which an OINP profile cannot be created. The job offer ID is generated by the employer, not the applicant: it’s the employer who enters the future employee’s first name, last name, and email address into the system.

To avoid mismatches, it’s worth sending the employer a copy of the passport in advance — that way the data for the job offer ID is copied directly from the document rather than written down from memory. This matters because the first and last name in the applicant’s own OP Portal profile must be entered exactly as they were entered in the job offer ID: any difference in spelling and the data won’t match.

The matching rule isn’t limited to the name. All information the employer entered when creating the job offer ID — first name, last name, email — must fully match what the applicant enters when registering in the OP Portal. If a mismatch is discovered after the fact, it can’t be corrected directly: the employer has to withdraw the job offer that was already created and issue a new one with the correct data.

the employer has to withdraw the job offer that was already created and issue a new one with the correct data

Data Must Match

The job offer ID is created by the employer, not the applicant. First name, last name, and email in the OP Portal must exactly match what the employer entered. An error can only be fixed by withdrawing and resubmitting the job offer.

Registering in the OP Portal: Creating a Profile and Access Settings

The OINP portal opens through a browser search, after which the system shows a captcha — an “I’m not a robot” check. Sometimes the checkmark doesn’t visually appear after clicking, but that doesn’t mean the action failed: you can click “continue” without waiting for visual confirmation.

For those working with the OINP portal for the first time, it will prompt you to create a new profile. Next, the system asks for an email and password — this is where the OP Portal account itself begins.

It’s best to use a personal email for registration rather than a work one: if something goes wrong on the employer’s end, access to a work address can be lost. For the same reason, it’s not a good idea to log in through a bank account link used as a partner login — if the bank has server issues right before a deadline, you won’t be able to log in to the OP Portal, and the submission could be missed.

After logging in, the portal will ask for a first and last name — these must exactly match the data the employer entered when creating the job offer ID (covered above).

The job offer ID received from the employer must be entered into the profile within 30 days. After that period, it can no longer be linked to the application.

Personal details — education, work history, IELTS results — aren’t locked in permanently once entered: you can log back into the portal and update them at any time.

Personal Email and 30 Days

Register with a personal email, not a work one — access to a work address can be lost. The job offer ID must be linked to the profile within 30 days, or it can no longer be linked at all.

Two Applications in the Portal, and Tier 0-3 vs. Tier 4-5

After logging in to the OP Portal, the system shows two applications under a single client. The first is an old application that was withdrawn after the Ontario Workforce Priority Stream was introduced. The second is a new one, created specifically for this stream; this is the one to work with going forward.

If the OINP profile is being created for the first time, there won’t be an old application — the portal will immediately prompt you to click “submit a new application” and move to the tier selection page. Two options are shown there: tier 0-3 and tier 4-5. The tier should be checked against the lock code, which indicates which stream the employer supports.

The employer selects the same tier when creating the job offer ID: at that stage, they already specify which tier the job offer is being submitted under. The tier chosen in the OP Portal profile must match the tier in the job offer ID — otherwise the data between the two forms won’t line up.

Filling In Personal Details: Passport, Contacts, Declaration

When logging in to the OP Portal, the system shows a declaration — a set of conditions the applicant confirms before continuing with the application. Each point of the declaration is worth reading carefully: if a wording raises a doubt, it can be checked against public sources or clarified directly with OINP.

After the declaration, a tab with personal details opens, part of which is already filled in by the employer — if there’s an error in that portion, the same rule applies as with the job offer ID: it can’t be corrected directly, only through withdrawal and resubmission of the job offer by the employer.

The applicant’s own fields come next:

  • Phone number — a personal number only, one OINP can reach the applicant on directly; a landline or a work office phone shouldn’t be listed.
  • Country of residence — the one where the applicant is actually living at the time of the application.
  • Country of birth — entered strictly as it appears on the passport, not based on origin or the parents’ citizenship: if the passport lists one country as the birthplace while the parents are from another, it’s the passport country that goes into the form.
  • Passport number — entered in the corresponding field.

After these fields are complete, click “next” — the application moves to the tab with employer details and work experience.

Personal Details for the OP Portal Tab

The Work Experience Tab: Wage, Tenure, and Income

The second tab in the profile is called Labour Market / Employment Factor. Part of the fields here are already filled in by the employer: the NOC code and hourly wage, for example $32 an hour, are pulled automatically from the job offer and shouldn’t be changed.

Next come two questions where almost every applicant gives the same answer. “Are you currently working for the employer named in the job offer?” — in 99% of cases the answer here is “yes”; “no” only applies to applicants whose employer is willing to support the application but who haven’t started the job yet. The second question — “are you working in the same position listed in the job offer?” — also almost always requires a “yes.” An example of “no”: the applicant works as an office administrator, while the employer is prepared to offer, and support the application for, a manager position instead. If the answer is “no,” the system requires a written explanation; if “yes,” no explanation is needed.

The next block is work tenure, and this is where people most often get confused. You need to list the total full-time employment in Canada over the past 3 years — the entire period from when the work permit application was submitted up to the current day. Separately, tenure specifically with the employer named in the job offer is listed. In the case reviewed here, the applicant had worked for this employer since January 2025, and from January 2026 she was promoted to manager — tenure in the new position is counted from the promotion date to the day of application and, in this case, falls in the 6–12 month range.

The third tenure question covers work in Ontario outside the current job offer position, at any other jobs. What’s counted is the difference between total Ontario tenure and tenure with the current employer.

The income section requires data from the CRA: last year’s income is taken from the Notice of Assessment, which needs to be downloaded in advance from the CRA online account. If the current year is 2026, the data entered is for the 2025 tax year, and the amount is taken from line 15000 of the return.

A Social Insurance Number (SIN) starting with the digit 9 typically indicates temporary status — this is a common marker for foreign workers. If the SIN starts with a different digit, it may indicate the applicant already holds permanent status or citizenship — such cases are worth clarifying individually. An error in the required fields of this section can become grounds for refusal of the entire application — the CRA data and SIN belong to exactly that category of fields.

An error in the required fields of this section can become grounds for refusal of the entire application

Get the Notice of Assessment Early

Last year’s income is taken from line 15000 of the Notice of Assessment — it’s worth downloading this document from the CRA account in advance instead of searching for it at the last minute.

Immigration Status, SIN, and the Special Measure for Ukrainian Citizens

To be eligible to apply, you need to answer “yes” to the question about lawful immigration status in Canada — student status, worker status, or maintained status all qualify. If the work permit has already expired or the study program has ended, and an extension application has been submitted but not yet decided, maintained status is selected — this option covers the gap between the end of the old status and receiving the new one.

The type of work permit needs to be entered precisely: a closed, LMIA-based work permit is marked as its own separate item, while an open spousal work permit falls under “other.”

The start and end dates of the work permit require extra care: a discrepancy of even a day or two matters — if the invitation to apply arrives after the permit has already expired, the application can be refused for containing inaccurate information.

A separate field asks about eligibility for the special ISC immigration measure based on a visa — this is checked by applicants from Ukraine.

UCI and Union Membership

The Client ID is the 9-digit UCI number found on the right side of the work permit, right under the permit’s own details; it just needs to be copied into the form field.

The form then asks about membership in a union representing the job offer position: if the applicant has a collective agreement, the answer is “yes.” There’s a practical consequence to this status: license holders and those covered by a collective agreement are exempt from the median wage requirement — this exemption matters in particular for applicants on an open spousal or closed work permit, since international student status isn’t available to them.

Median Wage Exemption

License holders and those covered by a collective agreement are exempt from the median wage requirement. This matters in particular for applicants on an open spousal or closed work permit, who don’t have access to international student status.

Express Entry, Education, and Language Results

The next block of the form asks whether the applicant has an active Express Entry profile. For tiers 0, 1, 2, and 3, an Express Entry profile can be listed regardless of the score it holds; for tier 4-5, this option may not be available. If a profile exists, you need to enter the Express Entry number, the jobseeker validation code, and its expiry date — all three values arrive in one of three notifications the system sends when the profile is created. It’s best to copy these values rather than type them in manually, to avoid errors. Once filled in, click next.

Education

The first tab of the education section is for the applicant’s most recent completed education; the second lets you list a first Canadian program, followed by a final degree. The key detail here is the graduation date — it needs to be checked against the course completion letter, which states the exact date. In the case reviewed, the date on this letter was 25.08.2023, and because of it the applicant didn’t qualify for the international graduate stream, but retained eligibility for Ontario Workforce Priority Stream by meeting the median wage requirement.

The education level is selected based on the course completion certificate — it states directly the type of credential received, in this case an Ontario college graduate certificate. The field of study shouldn’t be guessed: an exact wording is needed, since points depend on it. Country of education is Canada, province is Ontario; until 2025 students could study at colleges’ satellite campuses, which is worth keeping in mind when choosing a city. The city entered is the one where the school is physically located; in this example the applicant completed a two-year program in Canada, having earned a degree before that.

The system then asks whether the applicant is a recent graduate of an eligible Ontario institution who obtained their qualification within the last 3 years — this is a separate question about recent international graduate status. Since more than 3 years had passed since graduation in the case reviewed, the answer is “no.” If the studies were completed in person in Ontario, you need to list the school’s district rather than the city: for example, Kitchener falls under the Waterloo district, and Markham falls under the York district. Once all fields are complete, click next.

Language Results

The next page is for confirming language proficiency. For IELTS, the test date and the results date are entered. If the result went through a re-evaluation, the values need to be taken strictly from the TRF — the document submitted after receiving the invitation — and they must match exactly between the system and the TRF, with no discrepancies. French, as in Express Entry, adds extra weight: if a TEF Canada or TCF Canada result is available, one of them can be selected and the corresponding fields filled in. Required questions are marked with an asterisk — optional ones can be skipped. Once all fields are complete, click next again.

How EOI Points Are Calculated: A Real Example Breakdown

After the last question in the form — about the location where the applicant actually reports for work (relevant for remote employees or field-based roles such as on-site inspections) — the system opens the final page with a breakdown of points from all the data entered.

This breakdown is based on a real applicant’s profile:

Factor Points
NOC tier 6
NOC broad occupational category 4
$32/hour wage ~10
Ontario work experience ~12
Highest Canadian income $52K ($50–69.9K range) 6
Legal worker status in Canada 10
Education (bachelor’s) 6
Canadian credential (one) 5
Language CLB9 (maximum) 15
Second language (CELP) 5
Work region York 5
Total ~84

Some items aren’t reflected directly in the table but still affect the total: completing a program with a single work placement earns an extra point, and French proficiency adds another bonus on top of the English-language points. The work region is credited on a sliding scale: Toronto typically gives 0 points, York gives 5, and any location outside the GTA, York, and Peel adds a bonus of up to 10 points.

In the case reviewed, the applicant scored around 84 points. It’s worth saving the system’s final breakdown — a printout of the points page records exactly what the result was built from, and it comes in handy if the profile data ever needs to be recalculated or clarified.

Signing the Declaration and Submitting the EOI: What Happens Next

After the points are calculated, the system moves to the final declaration page: it asks for the applicant’s full name, date of birth, and today’s date. The name needs to be entered in full and exactly as it appears on the passport — no shortcuts like initials in place of a middle name. Below is the text of the declaration itself, which needs to be read, and in the signature field the same full name entered in the name field needs to be repeated: the system accepts this as an electronic signature.

After that, all that’s left is to click submit — and the profile turns into an Expression of Interest (EOI), the official name for an application to Ontario Workforce Priority Stream. The system assigns the application an EOI number — it’s worth saving: it will be needed to return to the application and track its status.

Then the waiting begins. Every year, hundreds of thousands of applications from international students are submitted for Ontario Workforce Priority Stream, but only 10,000–14,000 of them are accepted. As of an estimate from September 2026, about 95–97% of this quota has already been allocated, with roughly 100–140 spots remaining — these figures change quickly, and the current remaining quota is worth checking before applying.

only 10,000–14,000 of them are accepted

Real chances of receiving an invitation depend on the applicant’s profile. They remain high for those working in Northern Ontario, earning a decent wage, employed in a priority sector, whose employer supports the application, and who have a high score. Applicants from retail, food service, and other non-priority sectors can still create a profile, but their chances of getting an invitation are minimal: for the past 2–3 years, no selection round has been run at all for such categories.

If an invitation does arrive, the subsequent paperwork is worth entrusting to an immigration consultant or lawyer — it’s at that stage, not when creating the EOI itself, that professional help becomes worthwhile.

Quota Nearly Filled

As of September 2026, 95–97% of the annual quota of 10,000–14,000 spots has already been allocated, leaving around 100–140 spots open. The figures change quickly — check the remaining quota before applying.

Frequently asked questions

What happens if the invitation to submit a full application arrives after the work permit has already expired?

The application can be refused for containing inaccurate information, since status at the time of the invitation must remain valid. That’s why the work permit’s start and end dates need to be entered with complete accuracy already at the EOI stage — a discrepancy of even a day or two raises the risk of refusal at a later stage.

Can an application be submitted if the employer is in a non-priority sector like retail or food service?

Technically a profile can be created, but the chances of getting an invitation are minimal: no invitations have gone out to non-priority sectors for the past 2–3 years. This is worth factoring in before starting the application, not after seeing the score.

What happens if the job offer ID isn’t entered into the profile within 30 days?

Once that period expires, the ID received can no longer be linked to the application — the employer has to be asked to create a new job offer ID from scratch, and the linking process has to start over.

Can data in the OP Portal profile be corrected directly if an error is noticed after the EOI has already been submitted?

No: any data originally entered by the employer through the job offer ID can’t be changed directly in the applicant’s profile. The employer has to withdraw the active job offer and issue a new one with corrected data, after which the submission process has to be redone from the start.

Is it worth contacting an immigration consultant even before creating the EOI?

Based on the process described, professional help becomes worthwhile only after an invitation is received and the paperwork stage begins — the EOI itself can typically be completed on your own by following the form’s fields.