More Duration Options (Especially Years/Months)

I’d love to see Duration with the option of years, with the option to have a full year or a year and a month.

8 Likes

absolutely

I tried something like this, but didn’t work
RoundDown((Today()-thisRow.[start date])/365,0)+ " years, " (Today()-thisRow.[start date])/365 - RoundDown((Today()-thisRow.[start date])/365,0) +" months"

Hi,
unfortunately so far there is not an enhanced duration of bigger time parts.

I provided a rough calculation that could be useful for many use-cases:

Please: keep in mind that it’s an approximation (e.g. not leap-years compliant).

Let me know if it helps.
Cheers

I would find this feature useful as well. I would rather group it as following:

  • Days (already available)
  • Weeks
  • Months
  • Quarters
  • Years

This would be awesome for long term project management and roadmap estimations.

1 Like

Hi @Federico_Stefanato

There is an inaccuracy in your document if you put exactly 1 year:

268 chrome

273 chrome

1 Like

I’d love to see this, as well as monthly & yearly automations.

if(Floor((today() - thisRow.Start) / 365 - (today() - if(IsBlank(thisRow.End),today()+1,thisRow.End))/ 365)>0,Concatenate(Floor((today() - thisRow.Start) / 365 - (today() - if(IsBlank(thisRow.End),today()+1,thisRow.End))/ 365)," yr “,Concatenate(mod(round((today() - thisRow.Start) / 365 * 12, 0)-round((today() - if(IsBlank(thisRow.End),today()+1,thisRow.End)) / 365 * 12, 0),12), " mo”)),Concatenate(mod(round((today() - thisRow.Start) / 365 * 12, 0)-round((today() - if(IsBlank(thisRow.End),today()+1,thisRow.End)) / 365 * 12, 0),12), " mo"))

Are there any better options to make this work in the years since it was first asked?

Hi, this request has been around for years. It’s a widely used feature that’s still not implemented, and it doesn’t seem very complicated.

Could someone from the Coda team tell us if this is on any roadmap or if they’re considering it?

Seeing durations in thousands of days (in most cases) is useless. It would be great to be able to choose between days, weeks, months, or years to get useful results.

Thanks

hi @Jorge_Pineda ,

I totally get your point, but I am not so sure this matters to Coda as it does to us users. There are a few packs (two come to mind) that handle this complexity for you. Some time ago I programmed a CFL based solution (together with the great Coda Connaisseur @joost_mineur ) to handle this, that was not a simple puzzle. Anwway since paid packs exist and you can write your own code, I don’t believe Coda will dive into this. On top, over time an Ai will solve this for you. More than a year ago it failed, I did not test it recently, but maybe it does a better job today.

Cheers, Christiaan

2 Likes

Contrary to popular belief, this is a complex issue to solve simply because it’s ambiguous how many months, or years a number of days are

I spent weeks developing my first pack to solve this, doing my best to make it intuitive

1 Like

In the world of Project Management we have switched to using ISO week numbers (with WW.D format or YY"WW.D) for both deadlines and durations, reducing the issue to integer arithmetic that is independent of month lengths.

2 Likes

I asked a well-informed AI to educate me thoroughly about this issue, as dates and durations always give me heartburn. You can read the entire assessment here. It flagged Max’s recommendation as highly recommended and explained why.

Alternative Strategy: Standardize on Weeks (The “ISO Week” Approach)

Max suggested shifting project management to ISO Week numbers (e.g., 2024-W12) and durations (e.g., 12.3 weeks).

Verdict: Highly Recommended for Professional PM Work.

Why it works

It solves the “Variable Unit” problem by standardizing time.

  • 1 Week = 7 Days (Always).
  • 1 Month = Variable (BAD for math).
  • Deadlines: “Week 42” is an absolute window of time.
  • Durations: “4.2 Weeks” (4 weeks, 2 days) relies on pure integer arithmetic, eliminating “fuzzy” calendar logic.

Implementation Formulas

1. Display Duration as “WW.D” (e.g., “4.2”)

This shows weeks and remaining days. 4.2 = 4 Weeks, 2 Days.

Format("{1}.{2}",
Floor(Duration.ToDays() / 7), Round(Duration.ToDays() % 7))

2. Standardize Deadlines (ISO Week)

To group tasks by week number:

IsoWeekNumber(End Date)

This topic was automatically closed 3 days after the last reply. New replies are no longer allowed.