# Custom Actions vs. External Collections

Think of **Custom Actions** as performing a task with an external API, while **External Collections** are used to bring data into your app.

Custom Actions give your app more flexibility than External Collections because they run **instantly in response to a user action** and allow you to use the information in subsequent actions within your Adalo app.&#x20;

***

**Custom Actions**

* Used when you want your app to *do something* with an external service through a REST API.
* Send or receive data instantly when a user interacts with your app, such as pressing a button.
* Great for performing actions like:
  * Sending form data to another system or database
  * Triggering a webhook in Make or Zapier
  * Getting real-time information from an external API (for example, sports scores, current weather, or stock prices)
  * Creating or updating data in another platform
  * Generating a shortened URL from a link shortener API
* Best for getting a single piece of information for instant use.&#x20;

**External Collections**

* Used when you want your app to *get a list of something* from an external service.
* Retrieve and display lists or querying for individual records from an external database or API.
* Commonly use filters or query parameters that reference Logged-In User properties so each user only sees their own data.
* Best for reading and displaying information inside Adalo components, such as lists or detail screens.

In short, use a **Custom Action** when you need to send or update data, and use an [**External Collection**](https://help.adalo.com/integrations/external-collections-with-apis) when you need to show or query data.
