Countdowns, clock faces, and loading animations inside a cell.
=REPT("●",HOUR(NOW()))&REPT("○",12-HOUR(NOW()))
●●●●●●○○○○○○
=REPT("●",MOD(NOW()*86400,4))&REPT("○",4-MOD(NOW()*86400,4))
●●○○
=REPT("●",HOUR(NOW()))&REPT("○",24-HOUR(NOW()))
●●●●●●●●●●●●●●○○○○○○○○○○
=CHOOSE(MOD(HOUR(NOW()),12)+1,"↑","↗","↗","→","↘","↘","↓","↙","↙","←","↖","↖")
↗
=CHOOSE(MOD(QUOTIENT(MINUTE(NOW()),5),12)+1,"↑","↗","↗","→","↘","↘","↓","↙","↙","←","↖","↖")
→
=CHOOSE(MOD(NOW()*86400,8)+1,"↑","↗","→","↘","↓","↙","←","↖")
↘
=CHOOSE(MOD(HOUR(NOW()),12)+1,"↑","↗","↗","→","↘","↘","↓","↙","↙","←","↖","↖")&"◎"&CHOOSE(MOD(QUOTIENT(MINUTE(NOW()),5),12)+1,"↑","↗","↗","→","↘","↘","↓","↙","↙","←","↖","↖")
↗◎→
=CHOOSE(IF(MOD(HOUR(NOW()),12)=0,12,MOD(HOUR(NOW()),12)),"🕐","🕑","🕒","🕓","🕔","🕕","🕖","🕗","🕘","🕙","🕚","🕛")
🕗
=TEXT(NOW(),"h:mm AM/PM")
8:00 AM
=CHOOSE(MOD(NOW()*86400,4)+1,"↑","→","↓","←")
→
=CHOOSE(MOD(NOW()*86400,8)+1,"↑","↖","←","↙","↓","↘","→","↗")
↙
=REPT("·",SECOND(NOW()))&"↑"&REPT("·",59-SECOND(NOW()))
······························↑·····························
=REPT("·",MOD(HOUR(NOW()),12))&"↑"&REPT("·",11-MOD(HOUR(NOW()),12))
·······↑····
=REPT("█",QUOTIENT(MINUTE(NOW()),5))&REPT("░",12-QUOTIENT(MINUTE(NOW()),5))
██████░░░░░░
=IF(MOD(NOW()*86400,2)=0,CHAR(9203),CHAR(8987))
⏳
=REPT("●",MOD(60-SECOND(NOW()),10)+1)&REPT("○",10-MOD(60-SECOND(NOW()),10)-1)
●●●●●○○○○○
=IF(HOUR(NOW())<12,"☀️ AM","🌙 PM")
☀️ AM
=SWITCH(TRUE,HOUR(NOW())<5,"🌙",HOUR(NOW())<8,"🌅",HOUR(NOW())<12,"☀️",HOUR(NOW())<17,"🌤️",HOUR(NOW())<20,"🌇","🌃")
🌤️
=SWITCH(TRUE,HOUR(NOW())<5,"⚫",HOUR(NOW())<8,"🟠",HOUR(NOW())<17,"🟡",HOUR(NOW())<20,"🔴","⚫")
🟡
=SWITCH(TRUE,HOUR(NOW())<5,"🛏️",HOUR(NOW())<9,"☕",HOUR(NOW())<12,"💻",HOUR(NOW())<14,"🍔",HOUR(NOW())<17,"💻",HOUR(NOW())<20,"🍽️",HOUR(NOW())<22,"📺","🛏️")
☕
=IF(AND(HOUR(NOW())>=6,HOUR(NOW())<18),"☀️","🌙")
☀️
=TEXT(NOW(),"dddd")
Friday
=REPT("█",MIN(10,MAX(0,ROUND((TODAY()-DATE(YEAR(TODAY()),1,1))/(DATE(YEAR(TODAY()),12,31)-DATE(YEAR(TODAY()),1,1))*10,0))))&REPT("░",MAX(0,10-MIN(10,MAX(0,ROUND((TODAY()-DATE(YEAR(TODAY()),1,1))/(DATE(YEAR(TODAY()),12,31)-DATE(YEAR(TODAY()),1,1))*10,0)))))
█████░░░░░
=REPT("█",MIN(10,MAX(0,ROUND((TODAY()-DATE(YEAR(TODAY()),1,1))/(DATE(YEAR(TODAY()),12,31)-DATE(YEAR(TODAY()),1,1))*10,0))))&REPT("░",MAX(0,10-MIN(10,MAX(0,ROUND((TODAY()-DATE(YEAR(TODAY()),1,1))/(DATE(YEAR(TODAY()),12,31)-DATE(YEAR(TODAY()),1,1))*10,0)))))&" "&ROUND((TODAY()-DATE(YEAR(TODAY()),1,1))/(DATE(YEAR(TODAY()),12,31)-DATE(YEAR(TODAY()),1,1))*100,0)&"%"
█████░░░░░ 53%
=REPT(CHAR(9619),MIN(10,MAX(0,ROUND((TODAY()-DATE(YEAR(TODAY()),1,1))/(DATE(YEAR(TODAY()),12,31)-DATE(YEAR(TODAY()),1,1))*10,0))))&REPT(CHAR(9617),MAX(0,10-MIN(10,MAX(0,ROUND((TODAY()-DATE(YEAR(TODAY()),1,1))/(DATE(YEAR(TODAY()),12,31)-DATE(YEAR(TODAY()),1,1))*10,0)))))
▓▓▓▓▓░░░░░
=REPT(CHAR(9619),MIN(10,MAX(0,ROUND((TODAY()-DATE(YEAR(TODAY()),1,1))/(DATE(YEAR(TODAY()),12,31)-DATE(YEAR(TODAY()),1,1))*10,0))))&REPT(CHAR(9617),MAX(0,10-MIN(10,MAX(0,ROUND((TODAY()-DATE(YEAR(TODAY()),1,1))/(DATE(YEAR(TODAY()),12,31)-DATE(YEAR(TODAY()),1,1))*10,0)))))&" "&ROUND((TODAY()-DATE(YEAR(TODAY()),1,1))/(DATE(YEAR(TODAY()),12,31)-DATE(YEAR(TODAY()),1,1))*100,0)&"%"
▓▓▓▓▓░░░░░ 53%
=REPT("●",MIN(10,MAX(0,ROUND((TODAY()-DATE(YEAR(TODAY()),1,1))/(DATE(YEAR(TODAY()),12,31)-DATE(YEAR(TODAY()),1,1))*10,0))))&REPT("○",MAX(0,10-MIN(10,MAX(0,ROUND((TODAY()-DATE(YEAR(TODAY()),1,1))/(DATE(YEAR(TODAY()),12,31)-DATE(YEAR(TODAY()),1,1))*10,0)))))
●●●●●○○○○○
=REPT("●",MIN(10,MAX(0,ROUND((TODAY()-DATE(YEAR(TODAY()),1,1))/(DATE(YEAR(TODAY()),12,31)-DATE(YEAR(TODAY()),1,1))*10,0))))&REPT("○",MAX(0,10-MIN(10,MAX(0,ROUND((TODAY()-DATE(YEAR(TODAY()),1,1))/(DATE(YEAR(TODAY()),12,31)-DATE(YEAR(TODAY()),1,1))*10,0)))))&" "&ROUND((TODAY()-DATE(YEAR(TODAY()),1,1))/(DATE(YEAR(TODAY()),12,31)-DATE(YEAR(TODAY()),1,1))*100,0)&"%"
●●●●●○○○○○ 53%
=REPT("🟢",MIN(10,MAX(0,ROUND((TODAY()-DATE(YEAR(TODAY()),1,1))/(DATE(YEAR(TODAY()),12,31)-DATE(YEAR(TODAY()),1,1))*10,0))))&REPT("⚪",MAX(0,10-MIN(10,MAX(0,ROUND((TODAY()-DATE(YEAR(TODAY()),1,1))/(DATE(YEAR(TODAY()),12,31)-DATE(YEAR(TODAY()),1,1))*10,0)))))
🟢🟢🟢🟢🟢⚪⚪⚪⚪⚪
=REPT("🟢",MIN(10,MAX(0,ROUND((TODAY()-DATE(YEAR(TODAY()),1,1))/(DATE(YEAR(TODAY()),12,31)-DATE(YEAR(TODAY()),1,1))*10,0))))&REPT("⚪",MAX(0,10-MIN(10,MAX(0,ROUND((TODAY()-DATE(YEAR(TODAY()),1,1))/(DATE(YEAR(TODAY()),12,31)-DATE(YEAR(TODAY()),1,1))*10,0)))))&" "&ROUND((TODAY()-DATE(YEAR(TODAY()),1,1))/(DATE(YEAR(TODAY()),12,31)-DATE(YEAR(TODAY()),1,1))*100,0)&"%"
🟢🟢🟢🟢🟢⚪⚪⚪⚪⚪ 53%
=REPT("█",MIN(12,MAX(0,ROUND((TODAY()-DATE(YEAR(TODAY()),1,1))/(DATE(YEAR(TODAY()),12,31)-DATE(YEAR(TODAY()),1,1))*12,0))))&REPT("░",MAX(0,12-MIN(12,MAX(0,ROUND((TODAY()-DATE(YEAR(TODAY()),1,1))/(DATE(YEAR(TODAY()),12,31)-DATE(YEAR(TODAY()),1,1))*12,0)))))
██████░░░░░░
=REPT("█",MIN(12,MAX(0,ROUND((TODAY()-DATE(YEAR(TODAY()),1,1))/(DATE(YEAR(TODAY()),12,31)-DATE(YEAR(TODAY()),1,1))*12,0))))&REPT("░",MAX(0,12-MIN(12,MAX(0,ROUND((TODAY()-DATE(YEAR(TODAY()),1,1))/(DATE(YEAR(TODAY()),12,31)-DATE(YEAR(TODAY()),1,1))*12,0)))))&" "&ROUND((TODAY()-DATE(YEAR(TODAY()),1,1))/(DATE(YEAR(TODAY()),12,31)-DATE(YEAR(TODAY()),1,1))*100,0)&"%"
██████░░░░░░ 53%
=REPT("█",MIN(10,MAX(0,ROUND((TODAY()-DATE(YEAR(TODAY()),1,1))/(DATE(YEAR(TODAY()),12,31)-DATE(YEAR(TODAY()),1,1))*10,0))))&REPT("░",MAX(0,10-MIN(10,MAX(0,ROUND((TODAY()-DATE(YEAR(TODAY()),1,1))/(DATE(YEAR(TODAY()),12,31)-DATE(YEAR(TODAY()),1,1))*10,0)))))&" "&ROUND((TODAY()-DATE(YEAR(TODAY()),1,1))/(DATE(YEAR(TODAY()),12,31)-DATE(YEAR(TODAY()),1,1))*100,0)&"% (day "&TODAY()-DATE(YEAR(TODAY()),1,1)+1&")"
█████░░░░░ 53% (day 195)
=IF(MOD(A1,2)=0,CHAR(9203),CHAR(8987))
⏳
=REPT("⏰",A1)&" Wake up!"
⏰⏰ Wake up!
=IF(HOUR(NOW())=A1,REPT("⏰",3)&" Wake up!","💤 Sleeping")
⏰⏰⏰ Wake up!
Related formula guides
Go deeper with Better Sheets
Members get full courses on CHAR, REPT, and dashboard design, plus hundreds of Google Sheets tutorials. Copy-paste formulas here stay free.
See membership options