Project & Client Codes

A Project at Cantilever is a set of tasks that connect logically, and are billed in the same manner. Each Project has an Asana project and a Harvest project, and may also have a record on other services like Figma or Drive. In all such locations the project should be marked with a unique “Project Code”. The project code is prefixed with the client’s “Client Code”.

The Client IDs are three-character codes, for example, XYZ. The project ID is a numeral that we add to the end of the client ID. So the first project we do for client XYZ is XYZ-1, the second project is XYZ-2, etc. For internal projects, the client code is CAN.

Is a project an SOW? No, we ignore SOW numbering when numbering projects. Some projects are composed of multiple legal SOWs, while other SOWs contain multiple projects. There is no specific relationship between SOW numbers and project numbers.

Golden Rules

  • All projects should have a code that is shown anywhere that project has a record
  • The codes should be unique and never repeat. There should never be an asana/harvest project with the same code as another asana/harvest project.
  • The codes should always use the exact same format
  • Core Coverage should always use 0 as the project number in the code, ex. CAN-0

🏁 Creating a Code

When we onboard a new client, the PM should create a new entry in the that corresponds to that client. When creating this entry, the PM should create a Client ID that has not been used yet. Typically this will be a shortening of the client’s name, though it’s fine also to have fun with it – for example, UEFA is FUT to reference football.


When creating the first project for the client, the first project code should be #1, ex. “ABC-1”. Add this code to the Asana project, Harvest project, and so on. In most platforms you need to just put the string within the text field for the project name, but platforms like Harvest have a special field for project codes, so please use that.


Please follow the conventions already in place on each platform for how the client codes are used.

👴🏽 Historical Background

In our old project DB we used to have links for each project to the corresponding Hubspot sale, Basecamp project, etc. The goal was to associate the correct entity in each separate platform with the same project, so it would be easy to see which Basecamp project went with which Google Drive folder and so on. However, the link method broke down and did not work well. The links got outdated very easily and could cause confusion.

Therefore we switched our approach to use “Codes” for each client and project.