You are working in After-Effects and decided to roam the web for some third-party tools. To be honest, you are confused. What is the difference between Plug-Ins and Scripts? And for god's sake, what are extensions?

After Effects: Scripts vs Extensions vs Plugins. What’s the difference, anyway?

You are working in After-Effects and decided to roam the web for some third-party tools. To be honest, you are confused. What is the difference between Plug-Ins and Scripts? And for god's sake, what are extensions?

What’s a Rich Text element?

What’s a Rich Text element?

What’s a Rich Text element?

What’s a Rich Text element?

The rich text element allows you to create and format headings, paragraphs, blockquotes, images, and video all in one place instead of having to add and format them individually. Just double-click and easily create content.

Static and dynamic content editing

A rich text element can be used with static or dynamic content. For static content, just drop it into any page and begin editing. For dynamic content, add a rich text field to any collection and then connect a rich text element to that field in the settings panel. Voila!

How to customize formatting for each rich text

Headings, paragraphs, blockquotes, figures, images, and figure captions can all be styled after a class is added to the rich text element using the "When inside of" nested selector system.

It’s not your fault

Here’s a little hot take. After-Effects can be confusing. To this day there are many built-in workflows that are just upside down 🙃 For example, I am a big believer that expressions should be a power tool for advanced users only. Any basic functionality that is possible through expressions should be taken out of there for sake of accessibility and ease of use. To this day, in order to loop a set of keyframes, you need to dive into expressions. Good luck doing the same with path keyframes. This is a turn-off when you try to teach someone how to use the software, all of the sudden there is code involved. People who just learned about the concept of a keyframe should not know anything about JavaScript.

What kind of sorcery is this? 🧙

Follow the Good Boy Ninja on Twitter for After-Effects tips and tricks

When it comes to third-party tools I don’t have the right to complain, Scripts, Extensions, and Plugins are different and there is no good reason to mix them all together.

Or is there? What if they were all mixed together under the same bag of third-party tools?

I’ll get to that later. In the meantime, here’s a quick and dirty description of the differences between them all.


A Script at the core is a set of instructions for After-Effects to perform. That is why they are called scripts. Many times scripts are able to save you time by performing actions that you can already do as a user, but because scripts are a set of instructions that can run sequentially, they can usually do it much faster than you.

Scripts with interface

A script developer can choose to ship a script with a UI, usually a dialog window with buttons, sliders, and similar interaction elements. Your interaction with the window can perform different actions on demand.

Scripts in the ScriptUI Panels folder

These are similar to scripts with a user interface, but they can be docked into the After-Effects UI and can blend in nicely as part of your workspace. Having a dockable panel means there is no need to close the script window and reopen it every time you want to perform an action. It is sitting there waiting for you.

More about scripts

Script can be very basic, but can also offer a lot of things that more advanced tools offer. Don’t be turned down due to their simplicity, script developers can use a different set of tools to do more than just “perform actions you already can”, by contacting the web, accessing files and folders on your computer, and using command line actions.

Extensions (CEP Panels)

Extensions can be thought of as little browser windows inside After-Effects, commonly used to bring the power and flexibility of web development into an After-Effects panel. In other words, these are very similar to Scripts as they use the same scripting concepts in order to interact with the software but do offer a much wider range of possibilities, mostly when it comes to the UI. Extensions Panels are usually prettier and cleaner as they give developers more freedom in designing the panel, as they design with the mindset of designing a web page. Therefore it is more common for Extensions to display stuff like photos, videos, and gifs, or have animated components.


Plugins can be many different things. It is probably most common to see Plugins as Effects you access from the Effects menu. However, Plugins can be more than that and can sneak into different parts of the software and extend to the basic functionality of the software. Plugins can be panels as well or be called from different menus.

The main difference is that Plugins are much more integrated than scripts or extensions, and in the form of effects they can manipulate pixels freely, whereas scripts and Plugins usually call or apply already existing effects. From a development point of view, Plugins are probably the hardest to write, as they require knowledge in C / C++ (compared to JavaScript / ExtendScript).

So Plugins are the best? Right? RIGHT?

Well, not really. But also yes. But also not really.

A lot, and I mean a lot of the best third-party tools you will find online are scripts. Plugins are important in shaping your After-Effects experience, but developers have time and time again proved that a lot can be done with just scripting, let alone extensions. After-Effects is a big software, and by giving developers access to what it can do by itself, the creativity of script developers can skyrocket.

All serve a purpose. If scripts and extensions did not exist, a lot of great tools would probably not exist either, as the simplicity of JavaScript and the information available online compared to Plug-In development allows for more people to join the game and make great tools for you. Still, Plugins are important because magicians build them :)

Dear Mr. Good Boy Ninja, what is your take on all this?

Well, I’m glad you asked Cameron (sorry if your name isn’t Cameron, I don’t know your name).

I’ve been using After-Effects for ages now. Personally, I think this bridge that differentiates between all those tools should collapse, and users should think of all those tools as third-party tools.

Well, maybe not all of them, effects are not panels and that’s fine. However, does the average user really care about the difference between an extension and a script? Don’t they get a tool for what it offers? For what it does?

Moreover, so many scripts and extensions are using a panel because it lets the user keep the script on standby, and use it only when they want to perform a specific action. But why? Why do we need panels for every single thing? Some scripts are usually built on top of panels just to give you 1, 2, or maybe 3 buttons that do stuff. Even built-in scripts, like “Convert nulls from paths” literally have three buttons that do a very, very specific thing.

Imagine you could just right-click a path, and choose “Create nulls from this path”. You click it, the script does what it does, you keep working. No panels involved, no buttons. It just does what it is supposed to do. This also gives you fewer panels to worry about, which means a bigger viewer and more space for things that actually need panels.

Also, let’s talk about extensions. Extensions are beautiful, we love extensions. I would like to know what is an extension and what is a script. But I don’t need them to be in a completely different category or panels. It’s enough to have a tag, just like effects show an icon next to their names to tell you some more info at a glance, like the color depth this effect is using or whether it is GPU accelerated. There is no “GPU accelerated effects” menu, right? At the end of the day, we just use them and expect them to just work. Same with all my script and extensions that do use a panel, I would love to just be able to access them all together.

After all, they are all the same thing, 3rd party tools

And also Adobe if you’re already at it, make looping keyframes a built-in function ❤️

Good Boy Ninja

Good Boy Ninja
Motion Designer since 2008.
Maker of tools for Adobe After-Effects
Quick jump:
June 9, 2021
Similar Posts