Skip to content
Merged
Changes from 3 commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
75 changes: 62 additions & 13 deletions sources/platform/actors/publishing/index.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -5,39 +5,88 @@ sidebar_position: 7.5
slug: /actors/publishing
---

**Learn about publishing, and monetizing your Actors on the Apify platform.**
**Apify provides a platform for developing, publishing, and monetizing web automation solutions called Actors. This guide covers the key stages involved in publishing and monetizing your Actors on the Apify platform.**

---

> Sharing is caring but you can also make money from your Actors. Our [blog post](https://blog.apify.com/make-regular-passive-income-developing-web-automation-actors-b0392278d085/) contains all the information you need.

To build a public Actor, you'll go through the following four main stages:

## Publish process

To build & publish a public Actor on Apify platform, you'll go through the following main stages:

1. [Development](../development/index.md).
2. [Publication](./publishing/publish) and set up of [monetization](./publishing/monetize).
3. [Testing](../development/automated_tests.md).
4. [Promotion](../../academy/get-most-of-actors/seo-and-promotion).

While you don't necessarily have to maintain your private Actors, public Actors require a higher degree of responsibility.
## Benefits of publishing and monetization

Publishing your Actor on the Apify Store transforms your code into a sustainable revenue stream while eliminating traditional SaaS development overhead. When you publish your Actor, you automatically receive:

- A dedicated landing page showcasing your Actor's capabilities
- Built-in documentation hosting through README integration
- Direct exposure to organic user traffic
- Flexible sharing options with public or private source code settings
- Complete API documentation and integration examples

<details>
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I find this table a bit confusing, as it shows there is equality between hosting your own SaaS and building Actors. Can we communicate this somehow better and clearer? And probably merge with the above bulletpoints as they repeat the same thing.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Yeah the table worked much better in my mind, I'll tinker with it more to better represent the difference between Traditional SaaS & Apify.

<summary>Publishing on Apify significantly streamlines the traditional SaaS development process</summary>
| Traditional SaaS Requirements | Handled by Apify Platform |
|------------------------------|---------------------------|
| Product development | ✓ Actor development only |
| Extensive documentation | ✓ README file |
| Domain purchase & setup | ✓ Automatic landing page |
| Cloud infrastructure | ✓ Built-in scaling |
| Payment processing | ✓ Multiple payment options |
| Marketing campaigns | ✓ Store marketplace presence |
| Sales operations | ✓ Automated transactions |
</details>

### Monetization options

The platform supports various pricing models to match your Actor's value proposition:

As the name implies, Public Actors are available to the public on [Apify Store](https://apify.com/store), which means that an unmaintained public Actor could negatively affect all the other users that depend on it for their own activities on the platform.
- Fixed rental fee for continuous access
- Pay-per-result for usage-based pricing
- Event-based pricing for specific operations
- Custom pricing strategies for enterprise clients

Public Actors are regularly submitted to [automated tests](/platform/actors/publishing/test) to ensure they are functioning properly. Before making an Actor public, we recommend you reserve enough time to maintain the project (~2 hours weekly). This will ensure that your Actor maintains its long-term quality, improving your chances of successfully [monetizing your Actors](./monetize.mdx).
## Maintain public Actors

While private Actors don't necessarily require ongoin maintenance, public Actors demand a highres level of resonsibility. Since public Actors are available on the [Apify Store](https://apify.com/store) and may be used by other users, an unmaintained public Actor could negatively impact those who depend on it.

To ensure long-term quality and improve your chances of successfully monetizing your Actors, we rocemmend reserving approximately 2 hours per week for maintenance tasks, such as:

- Addressing bug reports & issues
- Implementing updates & improvements
- Responding to user inquireies & feedback

<img src={require("./images/apify-store.png").default} title="Apify Store" width="60%" />

If you decide to make your Actor code publicly available on [GitHub](https://github.com), its quality becomes a priority since your Actor could be a new user's first experience with Apify.
If you decide to make your Actor's code publicly available on [GitHub](https://github.com), code quality becomes even more crucial, as your Actor may be the first experience some users have with Apify.

### Handling breaking changes
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Here we should provide some best practices regarding versioning the Actors, e.g. use version-X tags. Do we have some page about that?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Closest page where we describe versioning is here. But I guess that is more of an explanation than any kind of best practices, not sure if that would be suitable


While refactoring and updating your Actor's code is encouraged, be cautious of making changes that could break the Actor for existing users. If you plan to introduce breaking change, please contact us at [[email protected]](mailto:[email protected]) beforehand, and we'll assist you in communicating the change to your users.

### Documentation and testing

Naturally, your Actor's code should be open to changes and updates, so don't be afraid of refactoring. However, beware of making changes that could potentially break the Actor for its existing users.
Pay special attention to your Actor's documentation ([README](../../academy/get-most-of-actors/actor-readme)). It should be clear, detailed and readable, using simple language and avoiding technical jargon whenever possible, as your users may not be developers.

If you plan on making a breaking change, please get in touch with us ahead of time at [[email protected]](mailto:community@apify.com), and we will help you to communicate the change to your users.
Ensure periodic testing, either manually or by [setting up automatic testing](../development/automated_tests.md) and [monitoring](https://apify.com/apify/monitoring). This can help prevent users from encountering issues with your Actor.

Also, pay special attention to your Actor's documentation ([README](../../academy/get-most-of-actors/actor-readme)). It should be clear, detailed, and readable. Think of the users, who might not be developers, so try to use simple, easy-to-understand language and avoid technical jargon.
## Inspiration for new Actors

Ensure periodic testing. You can either do it yourself or [set up automatic testing](../development/automated_tests.md) / [monitoring](https://apify.com/apify/monitoring). Try to prevent your users from coming to you with the issues.
To generate ideas for new Actor, consider the following sources:

## Inspiration
- Your own experiences with friends, colleagues, and customers
- SEO tools to identify search terms, websites related to web scrapint, web automation, or web integrations (see the[SEO article](../../academy/get-most-of-actors/seo-and-promotion) for more details)
- The [Actor ideas page](https://apify.com/ideas) to find Actors in demaed by the Apify community

To come up with ideas for new Actors, you can use your own experience with friends, colleagues, and customers. Alternatively, you can use SEO tools that might help you find the right search terms, websites related to web scraping, web automation, or web integrations. See the [SEO article](../../academy/get-most-of-actors/seo-and-promotion) for more details. Finally, you may take a look at our [Actor ideas page](https://apify.com/ideas) to find out which Actors are most in demand by the Apify community.
Additionally, you can refer to our [blog](https://blog.apify.com/) for examples of how we write about and present Actors, such as the:

To better understand the context and practical usage of public Actors, [check out our blog](https://blog.apify.com/). Get familiar with how we think and write about Actors, e.g. [Content Checker](https://blog.apify.com/set-up-alert-when-webpage-changes/) (short), [Kickstarter scraper](https://blog.apify.com/kickstarter-search-actor-create-your-own-kickstarter-api/) (mid-size), and [Google Sheets Actor](https://blog.apify.com/google-sheets-import-data/) (long one).
- [Content Checker article](https://blog.apify.com/set-up-alert-when-webpage-changes/)
- [Kickstarter scraper article](https://blog.apify.com/kickstarter-search-actor-create-your-own-kickstarter-api/)
- [Google Sheets Actor article](https://blog.apify.com/google-sheets-import-data/)