LatticeOKIAR

Migration guide · Lattice

Lattice migration: take your goals out with the CSV, keep the cascade intact

Facts checked October 27, 2026

Lattice is one of the easier HR suites to take goals out of. Its CSV export article says all users can export from the Goals Explore page, and the file carries an ID, a Parent ID, supporting goal IDs, owners, weights and progress amounts. You don't need support, a ticket or an API key for the basic move.

What trips people up is visibility. The export lists the public and private goals the person clicking the button has access to, nothing more. Pick the right person, check the counts, and the rest is mostly mapping.

On this page
  1. Before you start: decide what leaves and who exports it
  2. Step 1: Choose your Lattice exports
  3. Step 2: Check the Lattice file
  4. Step 3: Rebuild your Lattice goals in OKIAR
  5. Step 4: Replace the Lattice integrations
  6. Step 5: Run the first check-in
  7. Frequently asked questions

Before you start: decide what leaves and who exports it

Lattice sells Goals & OKRs as its own product next to Performance, Engagement and Compensation, according to Lattice's pricing. Plenty of companies move goals and keep reviews. Settle that first, because it changes what you export and what you tell your account team.

Then gather:

  • Your renewal date. Lattice bills annually with a $4,000 minimum. Ask your account team whether Goals can come off at renewal before you plan around it.
  • An exporter with wide visibility. An admin is the usual choice. Anyone else's file stops at the goals they can see. Check private goal counts either way.
  • The goal cycles in play. Write down the current cycle and any earlier ones leadership still asks about.
  • A picture of the cascade. If cascading is on, the Explore page has Cascade and Tree views. Screenshot the top two levels for later.

Step 1: Choose your Lattice exports

ExportWhereFormatCoversWatch for
Goals CSVGoals, Explore page, CSV.csvEvery goal the exporter can see, with 29 fieldsPrivate goals outside the exporter's view are missing
Cycle Explore pageAdmin, Goals, Goal cycles, then a cycleOn screenOne cycle's objectives and key results, participationA view for checking, not a file
Goals APIdevelopers.lattice.comJSONGoals and goal updatesNeeds an API key and someone to script it
Cascade or Tree viewGoals Explore pageOn screenParent and child structureOnly with cascading enabled
Export finder

Which Lattice export can you get?

A few yes-or-no questions, based on the Lattice help articles cited above.

Question 1

Are you a Lattice admin, or can one export for you?

The Explore page CSV

Open Goals, set the filters or a preset view, and click CSV. The Goals Explore page has six preset views; pick All for the widest file, since it holds every goal you have visibility into.

The columns are generous: ID, OKR Type, Goal Name, Goal Cycle, Goal Type, Department, Owners, Created at, Parent ID, Parent goal, Priority, Tags, Description, Status, State, Starting amount, Progress amount, Goal amount, Start date, Due date, Last updated, public or private, Supporting goal IDs, Support goals, Employee ID, Employee Email, Weight, Last Update and Progress percent.

A cycle at a time

Admins can open any launched cycle under Admin, Goals, Goal cycles. The cycle page shows participation by department, manager and individual, and the share of goals aligned to company goals. Use it to spot teams with no goals before you export, then filter the Explore page CSV by that cycle.

The Lattice API

If you want weekly update history as well as the goals, the Lattice API lists GET endpoints for goals and for goal updates. Someone with a key and a little scripting can pull the full history as JSON. For most OKR moves the CSV is enough.

Data that isn't goals

Reviews, feedback, 1:1 notes and engagement results stay in Lattice if you keep those products. If you're leaving Lattice completely, give HR a separate deadline for them. The API has feedback endpoints, and each module has its own reports.

Step 2: Check the Lattice file

Three things in Lattice's own notes affect counts. Draft goals appear in the export even though analytics leave them out. A goal with several owners counts once. And archived users' goals only show up in analytics if an active employee co-owns them or they sit in an active cascade.

Run four checks on the CSV:

  1. Objectives and key results per cycle match the cycle page, after you remove drafts you don't want.
  2. Every Parent ID points at an ID that is also in the file.
  3. Owners and Employee Email belong to people who still work at the company.
  4. You know which rows have a Weight other than the default, and which are private.

A Parent ID with no matching row usually means the parent belongs to a goal the exporter couldn't see. Re-export as an admin, or note it and link by hand.

Still comparing tools? The Lattice alternatives page looks at pricing, Teams support and imports for six options.

File check

Is your export ready to import?

Tick the four checks as you do them and enter your file size.

Needs a step first0 of 4 checks done

Enter your file size to check it against the upload limit.

  • Still to do: Objective and key result counts per cycle match the cycle page
  • Still to do: Every Parent ID matches a row in the file
  • Still to do: Owners are people who still work here
  • Still to do: I know which rows have weights and which are private

Step 3: Rebuild your Lattice goals in OKIAR

Upload the CSV as it is. OKIAR's goal import reads CSV and spreadsheets, including multi-sheet Excel, plus PDF, Word, text, Markdown, up to 5 MB per file. It helps map people, teams and parent links for you to review, so Lattice's Parent ID column does real work here. You can run it while signing up or later.

Order of work:

  1. Create a free account at okiar.app/signup.
  2. Import the current cycle. Leave closed cycles in a spreadsheet archive.
  3. Delete drafts nobody intends to finish.
  4. Look over the tree. Lattice objectives with OKR Type "Key result" children become objectives with key results.
  5. Set weights where Lattice had them. OKIAR supports weighted key results.
  6. Add extra owners where Lattice listed several. They're optional.
  7. Pick a period. Custom periods cover cycles that don't match calendar quarters.

Where each Lattice field goes in OKIAR

LatticeOKIARLook out for
OKR Type: objectiveObjectiveObjectives with no key results
OKR Type: key resultKey resultKey results that are really tasks
Parent IDParent linkParents outside the exported view
Supporting goal IDsChild objectivesDuplicates of Parent ID links
Owners, Employee EmailOwner and extra ownersPeople who have left
Goal Type and DepartmentTeamCompany goals with no team
Goal Cycle, start and due datesPeriod, custom if neededGoals spanning cycles
Starting, Progress and Goal amountStart, current and target valueBinary goals with no numbers
WeightKey result weightWeights on objectives
StatusPacing statusManual status that disagrees with progress
StateKeep active rows onlyDrafts and archived goals
Priority and TagsDescription textPriorities only one team used
PrivateLeave out or reviewSensitive personal goals

All 13 fields shown.

Status after the move

Lattice's Status column is chosen by people. OKIAR works status out from pacing, per its objective docs: progress against the expected amount for the date of 0.7 or more is On track, 0.4 to 0.69 is Behind, under 0.4 is At risk. Owners still set Not started, Closed and Abandoned themselves.

Step 4: Replace the Lattice integrations

Lattice's Goals plan includes Jira and Salesforce connections, and it has a Slack app and a Microsoft Teams integration.

In LatticeIn OKIAR
Slack notifications and feedbackSlack posts and direct messages
Teams notificationsNo Teams app; Slack or Telegram instead
Jira or Salesforce progressNo Jira integration; owners enter values at check-in
Lattice MCP in SlackbotOKIAR's MCP server creates objectives, key results and KPIs, and updates progress and check-ins

Step 5: Run the first check-in

Lattice users are used to weekly Updates. Keep the same day. In the first week, each owner enters a current value, a confidence score from 0 to 10 and any blocker. Compare top-level progress with Lattice's cycle page. When they agree, ask people to stop updating goals in Lattice and keep the CSV with your records.

Checklist · saves in your browser

Your Lattice migration checklist

Every step from this guide in one list. Ticks are saved on this device, so you can come back later.

0%

This week

Step 1: Export

Step 2: Check the file

Step 3: Rebuild in OKIAR

Step 4: Integrations

Step 5: First check-in

Run your next quarter in OKIAR

Free during beta, with no credit card.

Frequently asked questions

Who can export goals from Lattice?

All users can, from the Goals Explore page. Each export holds only the goals that person has access to, so an admin gives the most complete file.

Does the Lattice CSV include parent goals?

Yes. It has Parent ID, Parent goal, Supporting goal IDs and Support goals columns.

Are draft goals in the export?

Yes. Lattice includes drafts in the CSV even though analytics leave them out.

Can I move goals and keep Lattice for reviews?

Yes. Lattice prices Goals & OKRs separately from Performance, so you can export goals and keep reviews running. Check with your account team what changes at renewal.

Can I load goals back into Lattice later?

Only partly. Lattice's bulk upload is for admins, takes one owner per goal, up to 500 goals per file, and doesn't set parent links. Keep your original export.

Does OKIAR connect to Jira like Lattice does?

No. OKIAR has no Jira integration. Owners update key results at check-in, or through OKIAR's MCP server.

Related guides: the 15Five migration guide, the Leapsome migration guide and the Betterworks migration guide. See also the free beta.

Rebuild this quarter's OKRs in OKIAR, free during beta

No credit card, no caps on objectives, key results, KPIs or team members. Goal import reads the Lattice Goals CSV.