How to calculate Duration for each stage

Hello creatives

Working on a workflow to organize the order process between sales and production teams, as the order walkthrough several stages, I need to save date and time each time the status changed so I can calculate the duration of each stages


Thanks Marc appreciates your help, but can you mention more details please, shall I combine both expressions with if statement, making the intial value of a new virtual column : If( [status] =β€œstage name 1” , now(), β€œβ€)
And doing the same for diffraction virtual columns for each stage ?

How would you do it if you were keeping your records on paper?