How to Sync GitHub Milestones to Asana

Milestones are a great way to group issues into projects or even time periods. Now you can sync them with your project management tool.

The benefits of using milestones in project planning

Milestones are a great way to group issues into projects, features or even time periods in GitHub. It helps teams find their way in the ever growing list of issues and focus on what needs to be done.


We take advantage of Asana's custom fields feature to sync your GitHub milestones. If you don't have access to this feature (only for Asana Premium users) you can still sync GitHub milestones in Asana's task description footer. You should also map GitHub milestone due date with Asana task due date.

You can find this field mapping under the "Fields" tab of your Unito sync settings.

Want to see your Unito flows without ever leaving Asana? Check out the Flow Preview App for Asana here.

Do you need help connecting Asana and GitHub to Unito?

If you're still learning how to create flows with Unito, you can watch these clips from our Asana - GitHub webinar to understand the basics of this integration before proceeding.

Why sync GitHub and Asana with Unito?

How to sync GitHub and Asana with Unito

You can also follow along with our step-by-step onboarding guide to connect GitHub and Asana with Unito for the first time.

How to sync GitHub milestones to Asana

Create your custom field

Before you can sync the GitHub milestone to a custom field, you need to create that field in the destination app. This is supported in Asana, Wrike and Jira. Here's how to do it in Asana:

Create a “Milestone” custom fields in Asana (type: Text). It has to be created in the same workspace where the synced project will live. That’s it for Asana. You don’t need to activate it in your projects in Asana, this will be done automatically when you will map it in Unito.

Map the fields in Unito

Login to Unito and look for your Asana + GitHub flow and click "edit draft", then edit the “Field mappings" section.

Note: If you haven't created your flow yet, you can follow this step-by-step guide to sync GitHub + Trello - the same steps and principles apply even if you're syncing Asana + GitHub. 

Select +Add mapping, then "Select a field" for each tool. You can scroll through the list of options and look for Milestone or look for it in the search bar. 

Adding these fields will instruct Unito to populate the custom field with the name of the GitHub Milestone in Asana.

You can also map due dates together between Asana and GitHub at this stage. Just choose "Milestone Due Date" on the GitHub side, and "Due Date" from the Wrike drop-down menu.

Save your settings and that’s it! Your project(s) will start populating with GitHub Milestone information!

Tips and limitations

 - You can do an advanced search in Asana to easily find all the tasks from a specific Milestone

  • Click on ‘Search’ > ‘Advanced Search’ in Asana

  • There click on ‘Add Filter’

  • You can choose a Custom Field with a specific name

  • You can save, favorite, and even rename the search

  • When you change the task due date on Asana it will not change the Milestone due date in GitHub (to make sure you don’t accidentally change every other issue due date)

  • You can change the Milestone or fill one directly in Asana. Unito will look for for the closest matching Milestone in GitHub and add it to the issue (for example ‘Sprint 5’, ‘Sprint5’, ‘Sprint-5’ will match to the same Milestone for Unito, but ‘Sprint 4’ and ‘Sprint 55’ won’t. Neither will ‘Sprint 2.1.0’ and ‘Sprint 2.10’ match.)

  • If you set the custom field to a value that doesn't match any existing GitHub Milestone, it won't modify the corresponding issue in GitHub.

  • A Milestone cannot be created via Asana, Unito will always look for an existing one. We recommend you create the Milestone directly in GitHub.