Hi Juliet, if you apply Dan's expression you need to put it in your shape-groups -> form -> fill and contour. You can use QuickExp-Script to insert the expression on multiply properties at once, but you will most likely to select each of them before (and if you have 1000 groups with fill and contour, this is a selection of 2000 items and a lot! of clicking). https://lesterbanks.com/2018/10/expressions-quickexp-script/ You can still go the text-layer way, but instead of animation random letters, you just add an animator for opacity. The advantage in this way is, that you can put the whole string into one text layer and use the start and end property of the animator to change the opacity for some letters only. You can try to use random() expression on start and end, too: for start: seedRandom(index,true); start = random (something); for end: seedRandom(index,true); end = start + random (somethingelse); // prevent from going backwards Then, you duplicate this text-layer a lot of times and in each layer, another part of letters got the opacity change. The result should be near to what you want, but you don't need to re-create everything in AI and you don't need to put apart the artwork in hundreds of layers. Maybe there is another way, but my recommendation is to have a look into the text-animator options. This is truly an animators playground! *Martin
... View more