Short ID for tasks

I would like to have a short link for every task, that will consist of short project name and short task ID. The key word is “short”! For example,

You cannot imagine how incredibly useful to have in mind this short task description. And you can imagine how difficult is it to deal with current two (!) long numbers in every task link.



Thanks for the great feedback, @Dmitriy_Dobrynin. I believe the blocker for implementing this would be the sheer number of projects and tasks in Asana, which is part of the reason behind the large unique IDs in URLs today. That being said, I’m no engineer, so we’ll certainly capture this for the team for consideration and scoping from the Product team in the future.

In the meantime, I sometimes use a 3rd party link shortener (there’s many public options available) to send a more digestible link for tasks and projects out to others on the team when needed.

To understand more, are there certain common workflows where you’re distributing links to the team to point them to certain tasks rather than @-mentioning them in the task comments?


I use TextExpander to shorten links really quickly. So I just copy the link, type “/bitly” and it runs a script to shorten the link in my billy account. Here’s the script:

set my_Login to "YOUR LOGIN"
set my_API_Key to "YOUR API KEY"

if my_API_Key is equal to "" then
return " now requires you to have an account and to specify your login and API key. Please set these at the top of the /bitly snippet. To make the Internet Productivity Group editable, select it and choose File -> Duplicate, then delete the original read-only group."

set the ClipURL to (the clipboard as string)

ignoring case
	if ((characters 1 through 4 of ClipURL as string) is not "http") then
		return "Malformed URL."
		set the EncodedClipURL to urlencode(ClipURL) of me
		set curlCMD to ¬
			"curl --stderr /dev/null \"" & my_Login & "&apiKey=" & my_API_Key & "&uri=" & EncodedClipURL & "\""
		-- Run the script and get the result:
		set tinyURL to (do shell script curlCMD)
		return tinyURL
	end if
end ignoring

on urlencode(theText)
	set theTextEnc to ""
	repeat with eachChar in characters of theText
		set useChar to eachChar
		set eachCharNum to ASCII number of eachChar
		if eachCharNum = 32 then
			set useChar to "+"
		else if (eachCharNum ≠ 42) and (eachCharNum ≠ 95) and (eachCharNum < 45 or eachCharNum > 46) and (eachCharNum < 48 or eachCharNum > 57) and (eachCharNum < 65 or eachCharNum > 90) and (eachCharNum < 97 or eachCharNum > 122) then
			set firstDig to round (eachCharNum / 16) rounding down
			set secondDig to eachCharNum mod 16
			if firstDig > 9 then
				set aNum to firstDig + 55
				set firstDig to ASCII character aNum
			end if
			if secondDig > 9 then
				set aNum to secondDig + 55
				set secondDig to ASCII character aNum
			end if
			set numHex to ("%" & (firstDig as string) & (secondDig as string)) as string
			set useChar to numHex
		end if
		set theTextEnc to theTextEnc & useChar as string
	end repeat
	return theTextEnc
end urlencode

Thanks, Katie!

The length of the link is only one part of a problem. Another part is that you have no any anchors in your memory by looking at a link with two long numbers.

Why am I need to have a ‘memory anchor’ for every task if I can go straight to the task and @-mention team members there instead?

The reason is that major part of team members communication happens not in Asana, but in team messenger (Slack in our case). Typical scenario is when somebody suggests a feature or finds a bug. Then we should create a task or give a link that this task already exists. In the second case if we could give not only short, but descriptive link like Log in - Asana, he will unintentionally remember that his feature/bug is in project HR and has ID=206. And opposite, he will run away looking at link like Log in - Asana, at least because it occupies half of his screen. He will subscribe on this task but intuitively he will forget about this task.

I am sure, there are many other implicit reasons to have 1. short and 2. descriptive links for tasks, even looking at other well-known task trackers as JIRA or YouTrack.



Thanks for your help, @paulminors!

But the problem is not only the length of the link, but also descriptive meaning, like project short name and task ID in this project. I described it better in my reply to Katie.


Ah I see. Hopefully it’s something that can be sorted soon.

1 Like

URL lengths can probably be shortened quite a bit by using combinations of uppercase letters, lowercase letters, and numbers; and/or by inserting an organization ID in the middle.



Also human readable is very useful when making linking in CVS commit. Something like [PROJ-421] commit description


This would be a cool feature, we refer tasks in our developer commits. The current url is way too big. Please add an auto incrementing issue number feature. !!


I am very new to Asana and first thing I noticed is I don’t have any short unique number for my task. I thing It should be implemented on priority as its as basic requirement to discuss over any task with team.


This “problem” stopped me from using Asana. Jira, for example, has really small IDs that can become branch names and be mentioned during calls.


There’s actually a much simpler way for Asana to sort this…

I too am struggling to choose Asana over JIRA due to the fact I require a short task ID which will be automatically incremental, use no duplicates, and can have a customisable format (such as 3 letters, a dash, and 6 numbers: ABC-123456).

The simplest way for Asana to provide this functionality would be to develop a new custom field type which could be made mandatory, allowing the functionality mentioned above. Then, people would have a simple ID to share with clients. The actual URL of the task would be in the same format as currently. So long as the short task ID were searchable in the standard search field, this would be really good.

Until this is developed by Asana (which hopefully won’t be long at all), JIRA’s out-of-the-box functionality with task IDs is the way to go.


This would be helpful for tracking requirements and needs that stay around in a project for a long time.

1 Like

Any movement on this? Clearly it’s possible - (I am an engineer) other products do this (as others have mentioned). It’s become a real problem for us as well in not being able to easily refer to tasks. Even if there are potential workarounds, they don’t fit into a seamless workflow so aren’t really solutions - e.g., the link shortener doesn’t help other users know exactly which issue it links to without clicking the link.


Tracking this.

Are the devs planning to implement this?



We are currently looking to move our dev team ops from JIRA to Asana and this is a major stumbling block. We use the short task ID when checking in code, conducting reviews and discussing work packets so it’s proving painful trying to work without one.

I think the idea of just having a custom field you can add a prefix to, that just increments a count for each new task using that prefix would be an easy fix… as long as it’s searchable and visible on the kanban board.

Can you please make it happen?!?!?


We’ve the same problem. My preferred solution would be that for each project, we get to create a prefix and then Asana automatically adds a 4- or 5- digit number as each new task gets created. The intention is not for these to be globally unique - just within the project scope - and I’ve no great need to be able to create a URL with these codes. We’ve ended up doing this manually for some projects out of necessity and it’s a mess, as you’d expect :slight_smile:


This would be a great feature!!! Currently, we have a workaround using Yourls ( to create three-letter shortened names and short URLs to get to a task. It is extra work and would be nice if asana offered it built-in.

1 Like

hey @Dmitriy_Dobrynin I kinda get around this issue by either making a URL redirect or subdomain OR for emails by creating some clever rules in G Suite (

I use Webflow for my website so it’s easy peasy to create subpage redirects ie. [yourdomain]/mytasks or you can do this in your domain hosting console like GoDaddy and add subdomains eg. mytasks.[yourdomain] (sorry about the but Asana will only let me add two links…)

Hope one of those options suites you.

We moved on another tracker so now it is not an issue for us :slight_smile: