Pike
  • Pricing
  • Contact us
Log in
  1. Home/
  2. Migration guide/
  3. Kantata
Kantata logoPike logo

Migration guide

Move from Kantata to Pike

Export from the Kantata Data Exporter, map each file to a Pike CSV template and upload in order. Budget five to six weeks to cutover, then one month-end in Pike.

Available now

The Kantata OX Data Exporter under Settings → Exports produces CSV files for 22 data sets, and each one you keep maps to a Pike template.

  1. 1In Kantata, go to Settings → Exports and run the Data Exporter for Project, Task, User, Role, Rate Card Roles, Rate Card Versions, Allocation, Expense and Time Entry, each as CSV.
  2. 2Export time from Time Entries → Export Time. Each export covers one year, so run one per year you keep.
  3. 3Map columns with the Kantata column mapping. The Data Exporter uses API names: a Workspace is a project, and a Story is a task, deliverable or milestone.
  4. 4Upload customers, projects, members, tasks, time entries, expenses and allocations under Workspace settings → Integrations → CSV, in that order.

The Data Exporter list names no Groups, Estimates or member cost rate data sets. Take customers from your ledger, recreate open estimates as Pike deals, and set cost profiles by hand.

Available now

Kantata OX lists standard integrations with QuickBooks, Xero, NetSuite, Sage Intacct, Salesforce and HubSpot. Pike connects to each of them, so finance and sales keep the same ledger and CRM through the move.

  1. 1In Pike, go to Workspace settings → Integrations, add the accounting system your Kantata invoices went to, and run Import data for customers and invoice history.
  2. 2Add your CRM to bring companies, contacts and deals into Pike. Give each Pike customer the customer number you use for its Kantata Group before you upload projects.
  3. 3At cutover, disconnect Kantata from the ledger and the CRM, so only Pike sends invoices from Monday.

Pike has no CSV template for invoices. Pike imports Kantata invoice history from the ledger.

Entity map

What each Kantata record becomes in Pike

Column one uses Kantata OX's screen names, with the API name from the Data Exporter where it differs. Pike matches people on each Team Member's email address.

Groups (API: Workspace Groups)

Pike: Customers

Carries over: Group name, from the Groups screen or your ledger.

You set in Pike: Customer number. The Data Exporter list names no Groups data set, so take the customer list from your ledger.

Template columns: customerName, customerNumber

Projects (API: Workspaces)

Pike: Projects

Carries over: Name, budget in money, archived state from the Archived column.

You set in Pike: Project number, one billing type per project, and a project lead.

Template columns: projectNumber, title, customerNumber, status, billingType, budgetAmount, hourlyRate, leadEmail

Tasks, Deliverables and Milestones (API: Stories)

Pike: Tasks

Carries over: Title, project, story type, Fixed Fee or Time and Materials flag (`fixed_fee`).

You set in Pike: Billing type, set per project in Pike. Kantata sets it per task.

Template columns: title, projectNumber, description

Team Members (API: Users)

Pike: Members

Carries over: Name, email address (`email_address`), Active or Inactive state.

You set in Pike: Workspace role and team.

Template columns: email, displayName, position

Roles and Rate Cards

Pike: Positions and project hourly rates

Carries over: Role names from the Role export. Role rates, versions and the default rate from Rate Card Roles and Rate Card Versions.

You set in Pike: One `hourlyRate` per project, taken from the rate card version in force on that project.

Template columns: position (Members), hourlyRate (Projects)

Member cost rates

Pike: Cost profiles

Carries over: The Data Exporter list names no cost rate data set. Kantata records one cost rate per member per currency.

You set in Pike: A cost profile for every member who logs time, from their current Kantata cost rate.

Time Entries

Pike: Time entries

Carries over: Date, person, role, project, task, hours, rate and invoice status.

You set in Pike: Map invoice status to `invoiced`. The export lists no approval column, so set `approvalStatus` from approved timesheets in Kantata.

Template columns: date, hours, email, projectNumber, taskTitle, note, approvalStatus, invoiced

Expenses

Pike: Expenses

Carries over: Rows from the Data Exporter Expense set. Check its header row against the template.

You set in Pike: Nothing.

Template columns: date, amount, projectNumber, email, category, description

Allocations

Pike: Allocations

Carries over: Person, project, start and end date, minutes or percentage.

You set in Pike: Convert each allocation to hours per week before upload.

Template columns: email, projectNumber, startDate, endDate, hoursPerWeek

Invoices

Pike: Invoice history (from your ledger)

Carries over: Pike has no CSV template for invoices. Keep the Data Exporter Invoice file in your archive.

You set in Pike: Connect the accounting system and run Import data. New invoices go out from Pike from cutover.

Estimates

Pike: Deals

Carries over: The Data Exporter list names no Estimates data set. Copy open estimates from Kantata by hand.

You set in Pike: Status, probability and expected close date.

Template columns: title, customerNumber, status, value, probability, closeDate

Kantata entityPike entityWhat carries overWhat you set in PikeTemplate columns
Groups (API: Workspace Groups)CustomersGroup name, from the Groups screen or your ledger.Customer number. The Data Exporter list names no Groups data set, so take the customer list from your ledger.customerName, customerNumber
Projects (API: Workspaces)ProjectsName, budget in money, archived state from the Archived column.Project number, one billing type per project, and a project lead.projectNumber, title, customerNumber, status, billingType, budgetAmount, hourlyRate, leadEmail
Tasks, Deliverables and Milestones (API: Stories)TasksTitle, project, story type, Fixed Fee or Time and Materials flag (`fixed_fee`).Billing type, set per project in Pike. Kantata sets it per task.title, projectNumber, description
Team Members (API: Users)MembersName, email address (`email_address`), Active or Inactive state.Workspace role and team.email, displayName, position
Roles and Rate CardsPositions and project hourly ratesRole names from the Role export. Role rates, versions and the default rate from Rate Card Roles and Rate Card Versions.One `hourlyRate` per project, taken from the rate card version in force on that project.position (Members), hourlyRate (Projects)
Member cost ratesCost profilesThe Data Exporter list names no cost rate data set. Kantata records one cost rate per member per currency.A cost profile for every member who logs time, from their current Kantata cost rate.
Time EntriesTime entriesDate, person, role, project, task, hours, rate and invoice status.Map invoice status to `invoiced`. The export lists no approval column, so set `approvalStatus` from approved timesheets in Kantata.date, hours, email, projectNumber, taskTitle, note, approvalStatus, invoiced
ExpensesExpensesRows from the Data Exporter Expense set. Check its header row against the template.Nothing.date, amount, projectNumber, email, category, description
AllocationsAllocationsPerson, project, start and end date, minutes or percentage.Convert each allocation to hours per week before upload.email, projectNumber, startDate, endDate, hoursPerWeek
InvoicesInvoice history (from your ledger)Pike has no CSV template for invoices. Keep the Data Exporter Invoice file in your archive.Connect the accounting system and run Import data. New invoices go out from Pike from cutover.
EstimatesDealsThe Data Exporter list names no Estimates data set. Copy open estimates from Kantata by hand.Status, probability and expected close date.title, customerNumber, status, value, probability, closeDate

Kantata prices time from rate cards: each card holds a rate per role, in versions over time, with a default rate. Pike reads one `hourlyRate` per project, so take the role rate from the version in force on each open project.

Kantata sets member cost rates per currency, and a change applies only to new time entries. Set each Pike cost profile from the current cost rate in your main currency, and compare margin on older months with Kantata where a rate changed.

Kantata budgets projects in money and records hours on task estimates and allocations, so fill `budgetAmount` and leave `budgetHours` empty. Kantata sets Fixed Fee or Time and Materials per task; Pike sets `billingType` per project, so pick the type that covers most of the budget or split a mixed project in two.

The plan

Seven steps out of Kantata

The same steps as the main migration guide, with this tool's screens and settings.

  1. Week 1

    Migration owner, finance

    1

    1Week 1 · Migration owner, finance

    Freeze scope and export

    The files you export in week one are what Pike imports. Freeze edits in Kantata before you export.

    • Go to Settings → Exports and run the Data Exporter for Project, Task, User, Role, Rate Card Roles, Rate Card Versions, Allocation, Expense, Invoice and Time Entry, each as CSV.
    • Export from Time Entries → Export Time one year per file for every year you keep, and write down the date of your first export.
    • Export Projects covers active projects only. Use the Data Exporter Project file, with its Archived column, and check that the archived projects you keep appear in it.
    exports / rawdo not edit
    • customers.csvraw
    • projects.csvraw
    • tasks.csvraw
    • time-entries.csvraw
    • invoices.csvraw
    Cutover: Friday, week 5

    Done when: Data Exporter files and one time file per year in one folder, the export date written down, and a cutover Friday on the calendar.

  2. Week 1 to 2

    Operations lead

    2

    2Week 1 to 2 · Operations lead

    Clean the exported files

    Work in copies of the Kantata files and keep the raw folder untouched. Rename API columns to Pike template columns as you go.

    • Build one customer row per Group with a `customerNumber`, and add that number to every project row.
    • Set one `billingType` per project from the `fixed_fee` flags on its tasks in the Task file.
    • Check every Team Member email address against the email they will sign in to Pike with. Pike matches members, time and allocations on `email`.
    customers.csvbefore / after
    • Acme
    • ACME Ltd
    • Acme retainer

    Acme

    C-104 · T&M · 1,250/h

    Done when: Every project row has a project number, a customer number, a billing type and a budget amount.

  3. Week 2

    Workspace admin

    3

    3Week 2 · Workspace admin

    Build the workspace shell

    Admins set up Pike before the first upload, so imported projects have a lead and imported members have a team.

    • Create teams and positions that match your Kantata Roles. Invite admins and project leads only.
    • Connect the accounting system your Kantata invoices went to and run Import data, so finance sees ledger customers and invoice history in Pike.
    • Set a cost profile for each member from their current Kantata cost rate in your main currency.
    Workspace setup
    • Teams and roles
    • Templates and labels
    • Cost profiles12 of 12
    • Accounting connected
    • Invite everyoneweek 4

    Done when: Admins and leads are in Pike. Finance sees the same customer list as the ledger.

  4. Week 2 to 3

    Workspace admin

    4

    4Week 2 to 3 · Workspace admin

    Upload in dependency order

    Upload under Workspace settings → Integrations → CSV. Pike reports a missing customer number, project number or email with its line number.

    • Upload customers, projects, members and tasks, then one time entries file per Kantata year, then expenses and allocations.
    • Fix rejected rows and upload them again. Pike matches each row on its project number or email and updates the record.
    • Open one Fixed Fee project and one Time and Materials project and compare budget, rate and last month’s hours with Kantata.
    Import datain order
    • Customers48
    • Projects112
    • Members19
    • Tasks1,430
    • Time entries
    • Deals

    Done when: Customer, project, member and last-month hour counts match Kantata.

  5. Week 3 to 5

    Delivery lead, finance

    5

    5Week 3 to 5 · Delivery lead, finance

    One team in Pike, the rest in Kantata

    The CSV route has no ongoing sync. The pilot team logs time in Pike only, and everyone else logs in Kantata until cutover.

    • Pick one team with a live client project and an invoice due. From Monday its members log time in Pike only.
    • Finance approves the pilot team’s time in Time admin and sends one invoice from Pike in place of Kantata.
    • Compare the pilot project’s margin in Pike with Kantata. A gap means a rate card version or cost rate needs a fix in Pike.

    Old tool

    Rest of team

    logs as before

    keep syncing

    Pike

    Pilot team

    approved, invoiced

    Done when: One invoice sent from Pike. The pilot lead signs off.

  6. Week 5 to 6

    Migration owner

    6

    6Week 5 to 6 · Migration owner

    Cutover weekend

    Close Kantata on Friday evening and upload every hour logged there since your first export.

    • Friday: everyone submits and managers approve the week in Kantata. Kantata locks approved time, so managers reject any entry that still needs a change before the final export.
    • Export Time Entries from your first export date to Friday, map it to the time entries template and upload it. Leave out the pilot team, whose time is already in Pike.
    • Deactivate members in Kantata. Kantata moves them to Inactive and off the Active list you pay for.

    Fri

    Approve. Sync. Read-only.

    Sat, Sun

    Rest.

    Mon

    All in Pike. Demo at 10:00.

    Done when: Time admin shows every active member by Monday afternoon. Kantata shows no time after Friday.

  7. Week 6 to 9

    Finance

    7

    7Week 6 to 9 · Finance

    First month-end in Pike

    Done when finance closes a month without opening Kantata.

    • Approve all time, invoice every billable project from Pike and send the invoices to accounting.
    • Run the Data Exporter once more for Invoice and Time Entry and store the files with the raw exports.
    • Once the first Pike invoices are paid, the account owner follows Kantata’s account deletion steps.
    Baselinebefore / Pike
    Days to invoice
    Unbilled hours at close
    Margin by project

    Done when: Month closed in Pike. Kantata exports saved with two owners. Kantata account closed.

Rebuild

Set these up in Pike by hand

  • Open estimatesCreate them as deals with value and expected close date.Pike docs
  • Rate cardsSet the hourly rate on each project from its rate card version.Pike docs
  • Member cost ratesEnter each member’s cost in their cost profile.Pike docs
  • Timesheet approversChoose who approves time for each team in Time admin.Pike docs
  • Invoice layout and payment termsSet numbering, terms and layout in invoice settings.Pike docs

Questions

Moving from Kantata: common questions

Why are archived projects missing from our project export?

Export Projects in Kantata covers active projects only. Use the Project set in the Data Exporter under Settings → Exports, which has an Archived column, and check that the closed projects you keep appear in it.

Can we export all our time in one file?

No. Time Entries → Export Time exports one year per file, as CSV or XLSX. Run one export per year and upload each file to the Pike time entries template.

Why do the export columns say Workspace and Story?

The Data Exporter uses Kantata’s API names. A Workspace is a project, a Story is a task, deliverable, milestone or issue, and Workspace Groups are your Groups. Kantata publishes the full mapping of screen names to API names.

Can we fix time that managers already approved in Kantata?

Kantata locks approved time. A manager rejects the entry, and the person edits and resubmits it. Do this before the final export, or fix the row in the CSV and upload it with `approvalStatus` set to `approved`.

Do we keep paying for Kantata members after cutover?

Deactivating a member in Kantata moves them to the Inactive tab. Kantata bills for members on the Active tab, so deactivate everyone who now logs time in Pike.

Does Pike import Kantata invoices?

Pike has no CSV template for invoices. Keep invoice history in QuickBooks, Xero, NetSuite or Sage Intacct, connect that system to Pike, and Pike imports customers and invoices from the ledger.

Support through the move and after it

Migration support comes with every plan: we map your exports, run the imports with you and check the counts before cutover. After go-live, hypercare until the first month-end closes in Pike. Then we hand over to your admins and stay close for as long as you use Pike. Email hello@usepike.com with your source tool and we will say which route fits.

  • Switch playbook
  • Kantata vs Pike
  • Migration guide for every tool

Kantata documentation used for this guide

  • Kantata: Export account data
  • Kantata: Exporting time entries
  • Kantata: Exporting projects
  • Kantata: Mapping of user interface names to API object names
  • Kantata: Task billing types
  • Kantata: Approved time entries
  • Kantata: Rate cards
  • Kantata: Member cost rates
  • Kantata: Managing account members
  • Kantata: Account and user deletion
  • Kantata OX standard integrations
  • Kantata API specification

Your business runs better on Pike.

Contact sales
  • ISO 27001 CertifiedISO 27001
  • GDPR CompliantGDPR
  • AICPA SOC 2 Type IISOC 2 Type II

Built to keep sensitive client data secure and private.

Pike box logoPike
Features
ProjectsResourcing & capacityFinance & invoicingDashboardsCustomers & salesTime & absencePike MCPIntegrations
Company
BlogOur storySwitch playbookMigration guideGet in touch
Industries
Creative agenciesMarketing agenciesDigital agenciesConsulting firmsIT consultanciesArchitecture firms
Resources
DocsChangelogPrivacy policyTerms and conditionsGlossaryFree toolsFAQ
All systems operational

Engineered around the 🌎

© 2026 Pike. All rights reserved.