I guess you can calculate percentage of watched episodes also like this:
Math(Replace(RemoveCharacters(Watched(2),/ watched),of,//)*100)
Using above would make steps 2-4 not necessary and modify step 5 calculation a little
[Series]
Save(Math(Replace(RemoveCharacters(Watched(2),/ watched),of,//)*100),ratio, 0) <font face="Consolas" size="90" alpha="40">If(IsRange(Load(ratio), 0-0), Not Started,)If(IsRange(Load(ratio), 0.0001-4), <font color="B61E1B">[■ ]<//font> ,)If(IsRange(Load(ratio), 4.0001-8), <font color="B6281B">[■■ ]<//font> ,)If(IsRange(Load(ratio), 8.0001-12), <font color="B6321B">[■■■ ]<//font> ,)If(IsRange(Load(ratio), 12.0001-16), <font color="B63F1B">[■■■■ ]<//font> ,)If(IsRange(Load(ratio), 16.0001-20), <font color="B64A1B">[■■■■■ ]<//font> ,)If(IsRange(Load(ratio), 20.0001-24), <font color="B6541B">[■■■■■■ ]<//font> ,)If(IsRange(Load(ratio), 24.0001-28), <font color="B65E1B">[■■■■■■■ ]<//font> ,)If(IsRange(Load(ratio), 28.0001-32), <font color="B66B1B">[■■■■■■■■ ]<//font> ,)If(IsRange(Load(ratio), 32.0001-36), <font color="B6751B">[■■■■■■■■■ ]<//font> ,)If(IsRange(Load(ratio), 36.0001-40), <font color="B6801B">[■■■■■■■■■■ ]<//font> ,)If(IsRange(Load(ratio), 40.0001-44), <font color="B68A1B">[■■■■■■■■■■■ ]<//font> ,)If(IsRange(Load(ratio), 44.0001-48), <font color="B6941B">[■■■■■■■■■■■■ ]<//font> ,)If(IsRange(Load(ratio), 48.0001-52), <font color="B6A11B">[■■■■■■■■■■■■■ ]<//font> ,)If(IsRange(Load(ratio), 52.0001-56), <font color="B6AB1B">[■■■■■■■■■■■■■■ ]<//font> ,)If(IsRange(Load(ratio), 56.0001-60), <font color="B3B61B">[■■■■■■■■■■■■■■■ ]<//font> ,)If(IsRange(Load(ratio), 60.0001-64), <font color="A9B61B">[■■■■■■■■■■■■■■■■ ]<//font> ,)If(IsRange(Load(ratio), 64.0001-68), <font color="9FB61B">[■■■■■■■■■■■■■■■■■ ]<//font> ,)If(IsRange(Load(ratio), 68.0001-72), <font color="94B61B">[■■■■■■■■■■■■■■■■■■ ]<//font> ,)If(IsRange(Load(ratio), 72.0001-76), <font color="87B61B">[■■■■■■■■■■■■■■■■■■■ ]<//font> ,)If(IsRange(Load(ratio), 76.0001-80), <font color="7DB61B">[■■■■■■■■■■■■■■■■■■■■ ]<//font> ,)If(IsRange(Load(ratio), 80.0001-84), <font color="73B61B">[■■■■■■■■■■■■■■■■■■■■■ ]<//font> ,)If(IsRange(Load(ratio), 84.0001-88), <font color="66B61B">[■■■■■■■■■■■■■■■■■■■■■■ ]<//font> ,)If(IsRange(Load(ratio), 88.0001-92), <font color="59B61B">[■■■■■■■■■■■■■■■■■■■■■■■ ]<//font> ,)If(IsRange(Load(ratio), 92.0001-96), <font color="4CB61B">[■■■■■■■■■■■■■■■■■■■■■■■■ ]<//font> ,)If(IsRange(Load(ratio), 96.0001-99.9999), <font color="3FB61B">[■■■■■■■■■■■■■■■■■■■■■■■■■ ]<//font> ,)If(IsRange(Load(ratio), 100-100), <font color="32B61B">[■■■■■■■■■■■■■■■■■■■■■■■■■■]<//font> ,)<//font>