Skip to content

Commit d75b4e7

Browse files
authored
docs: update monetize your Actor section (#1337)
1 parent 9f5e44b commit d75b4e7

File tree

2 files changed

+60
-93
lines changed

2 files changed

+60
-93
lines changed

sources/academy/platform/get_most_of_actors/monetizing_your_actor.md

Lines changed: 59 additions & 93 deletions
Original file line numberDiff line numberDiff line change
@@ -5,38 +5,41 @@ sidebar_position: 5
55
slug: /get-most-of-actors/monetizing-your-actor
66
---
77

8-
# Monetizing your Actor
9-
108
**Learn how you can monetize your web scraping and automation projects by publishing Actors to users in Apify Store.**
119

1210
---
1311

14-
When publishing your Actor on the Apify platform you have the choice to make it a **Paid Actor** and get paid by users benefiting from your tool. When making your Actor paid, you can choose from two pricing models: **rental** and **pay-per-result**.
12+
When you publish your Actor on the Apify platform, you have the option to make it a _Paid Actor_ and earn revenue from users who benefit from your tool. You can choose between two pricing models:
13+
14+
- Rental
15+
- Pay-per-result
1516

1617
## Rental pricing model
1718

18-
When you choose to make your Actor rental, you will specify the length of the free trial and a monthly rental price. Any user that wants to use your Actor will need to first activate the free trial, and once that's concluded, they will be charged the monthly rent set by you. Note that after the free trial, the user will need to have one of Apify's [paid plans](https://apify.com/pricing) to be able to pay the monthly rental and use the Actor further.
19+
With the rental model, you can specify a free trial period and a monthly rental price. After the trial, users with an [Apify paid plan](https://apify.com/pricing) can continue using your Actor by paying the monthly fee. You can receive 80% of the total rental fees collected each month.
20+
21+
<details>
22+
<summary>Example - rental pricing model</summary>
23+
24+
You make your Actor rental with 7 days free trial and then $30/month. During the first calendar month, three users start to use your Actor:
1925

20-
At the end of each month, we will then add up all rental fees collected in that month, and 80% of the total goes to you.
26+
1. First user, on Apify paid plan, starts the free trial on 15th
27+
2. Second user, on Apify paid plan, starts the free trial on 25th
28+
3. Third user, on Apify free plan, start the free trial on 20th
2129

22-
> **Example - rental pricing model**
23-
>
24-
> You make your Actor rental with 7 days free trial and then $30/month. During the first calendar month, three users start to use your Actor.
25-
>
26-
>1. first user, on Apify paid plan, starts the free trial on 15th
27-
>2. second user, on Apify paid plan, starts the free trial on 25th
28-
>3. third user, on Apify free plan, start the free trial on 20th
29-
>
30-
> The first user pays their first rent 7 days after the free trial, i.e. on 22nd. The second user only starts paying the rent next month. The third user is on Apify free plan, so after the free trial ends on 27th, they are not charged and cannot use the Actor further until they get a paid plan. Hence, your profit is computed only from the first user. They were charged $30, so 80% of this goes to you, i.e. `0.8 * 30 = $24`.
30+
The first user pays their first rent 7 days after the free trial, i.e., on 22nd. The second user only starts paying the rent next month. The third user is on Apify free plan, so after the free trial ends on 27th, they are not charged and cannot use the Actor further until they get a paid plan. Your profit is computed only from the first user. They were charged $30, so 80% of this goes to you, i.e., _0.8 * 30 = $24_.
31+
</details>
3132

3233
## Pay-per-result pricing model
3334

34-
If you make your Actor pay-per-result instead, you will set the price per 1,000 results, and users will be charged for your Actor solely based on the number of results your Actor produces. That's your _revenue_. The underlying [platform usage](https://docs.apify.com/platform/actors/running/usage-and-resources) the Actor generates, using the pay-per-result unit pricing defined below, is your _cost_. Your profit which is then paid to you is computed as 80% of the revenue minus the costs, i.e. `(0.8 * revenue) - costs = profit`. This profit is also paid out monthly.
35+
In this model, you set a price per 1000 results. Users are charged based on the number of results your Actor produces. Your profit is calculated as 80% of the revenue minus platform usage costs. The formula is:
36+
37+
`(0.8 * revenue) - costs = profit`
3538

3639
### Pay-per-result unit pricing for cost computation
3740

3841
| Service | Unit price |
39-
|---------------------------------|----------------------------|
42+
|:--------------------------------|:---------------------------|
4043
| Compute unit | **$0.4** / CU |
4144
| Residential proxies | **$13** / GB |
4245
| SERPs proxy | **$3** / 1,000 SERPs |
@@ -53,121 +56,84 @@ If you make your Actor pay-per-result instead, you will set the price per 1,000
5356
| Request queue - reads | **$0.004** / 1,000 reads |
5457
| Request queue - writes | **$0.02** / 1,000 writes |
5558

59+
60+
Only revenue & cost for Apify customers on paid plans are taken into consideration when computing your profit. Users on free plans are not reflected there, although you can see statistics about the potential reeenue of users that are currently on free plans in Actor Insights in the Apify Console.
61+
5662
:::note What are Gigabyte-hours?
5763

58-
Gigabyte-hours (GB-hours) are a unit of measurement used to quantify data storage and processing capacity over time.
59-
To calculate GB-hours, multiply the amount of data in gigabytes by the number of hours it's stored or processed.
64+
Gigabyte-hours (GB-hours) are a unit of measurement used to quantify data storage and processing capacity over time. To calculate GB-hours, multiply the amount of data in gigabytes by the number of hours it's stored or processed.
6065

61-
Suppose you host 50GB of data for 30 days. To calculate this in GB-hours:
66+
For example, if you host 50GB of data for 30 days:
6267

6368
- Convert days to hours: _30 * 24 = 720_
6469
- Multiply data size by hours: _50 * 720 = 36,000_
6570

6671
This means that storing 50 GB of data for 30 days results in 36,000 GB-hours.
67-
6872
:::
6973

70-
Note that only revenue and cost for Apify customers on [paid plans](https://apify.com/pricing) are taken into consideration when computing your profit. Users on free plans are not reflected there, although you can see statistics about the potential revenue of users that are currently on free plans in Actor insights in the Apify Console.
74+
Read more about Actors in the Store and different pricing models from the perspective of your users in the [Store documentation](https://docs.apify.com/platform/actors/running/actors-in-store).
7175

72-
> **Example - pay-per-result pricing model**
73-
>
74-
> You make your Actor pay-per-result and set price to be $1/1,000 results. During the first month, two users on Apify paid plans
75-
use your Actor to get 50,000 and 20,000 results, costing them $50 and $20 respectively. Let's say the underlying platform usage for the first user is $5 and for the second $2. Third user, this time on Apify free plan, uses the Actor to get 5,000 results, with underlying platform usage $0.5.
76-
>
77-
> Your profit is computed only from the first two users, since they are on Apify paid plans. The revenue for the first user is $50 and for the second $20, i.e. total revenue is $70. The total underlying cost is $5 + $2 = $7. Since your profit is 80% of the revenue minus the cost, it would be `0.8 * 70 - 7 = $49`.
76+
<details>
77+
<summary>Example - pay-per-result pricing model</summary>
7878

79-
You can read more about Actors in the Store and different pricing models from the perspective of your users in our [Store documentation](https://docs.apify.com/platform/actors/running/actors-in-store).
79+
You make your Actor pay-per-result and set price to be $1/1,000 results. During the first month, two users on Apify paid plans use your Actor to get 50,000 and 20,000 results, costing them $50 and $20 respectively. Let's say the underlying platform usage for the first user is $5 and for the second $2. Third user, this time on Apify free plan, uses the Actor to get 5,000 results, with underlying platform usage $0.5.
8080

81-
### Best practices for pay-per-result Actors
81+
Your profit is computed only from the first two users, since they are on Apify paid plans. The revenue for the first user is $50 and for the second $20, i.e., total revenue is $70. The total underlying cost is _$5 + $2 = $7_. Since your profit is 80% of the revenue minus the cost, it would be _0.8 * 70 - 7 = $49_.
82+
</details>
8283

83-
1. Set `minMemoryMbytes` and `maxMemoryMBytes` in [`actor.json`](https://docs.apify.com/platform/actors/development/actor-definition/actor-json) in your Actor folder. If users use more memory than you counted with in your price estimations, their runs will generate more underlying platform usage and will cost you more, which might affect your profit margin.
84+
### Best practices for Pay-per-results Actors
8485

85-
2. Always check `ACTOR_MAX_PAID_DATASET_ITEMS` environment variable in your Actor code. Your Actor should never return more than `ACTOR_MAX_PAID_DATASET_ITEMS` results, because the user will be not charged for more and you could start generating losses. This variable is configurable by the user to limit how much the run will cost them. You can copy paste [this code](https://github.com/metalwarrior665/max-paid-items-example/blob/master/src/push-data.ts#L12) to your project to make pushing data aware of the max paid dataset items.
86+
To ensure profitable operation:
8687

87-
3. To set your price per 1,000 results, we recommend running your Actor several times to see the average cost per 1,000 runs that is available in the Apify Console when you open run detail. Usually runs returning only 1 result are much more expensive in the underlying platform costs than runs returning many results, due to fixed costs at Actor startups. Hence, try runs with different numbers of results in your experiments to get the best idea about the average costs. Also make sure your runs never return 0 results, e.g. when scraping social network profiles without any videos, return at least the basic profile info.
88+
- Set memory limits in your [`actor.json`](https://docs.apify.com/platform/actors/development/actor-definition/actor-json) file to control platform usage costs
89+
- Implement the `ACTOR_MAX_PAID_DATASET_ITEMS` check to prevent excess result generation
90+
- Test your Actor with various result volumes to determine optimal pricing
8891

8992
## Setting up monetization
9093

91-
First, go to your Actor page, [**Actors → My Actors**](https://console.apify.com/actors?tab=my) and click on the Actor you want to monetize. While on your Actor page, go to the **Publication** tab on the right side of the screen into and open the **Monetization** section.
92-
94+
Navigate to your [Actor page](https://console.apify.com/actors?tab=my) in the Apify Console choose Actor that you want to monetize, and select the Publication tab.
9395
![Monetization section](./images/monetization-section.png)
94-
95-
If you haven't already, you will need to fill in the billing and payment details that will be used for paying out the profits. You can do that by following the link shown on the screen. Once you have the details set up, you will be able to access details on your payouts in the [**Settings > Payouts**](https://console.apify.com/account/payouts) section.
96-
96+
Open the Monetization section and complete your billing and payment details.
9797
![Set up monetization](./images/monetize_actor_set_up_monetization.png)
98-
99-
Once you have your details set up, you can click the **Set up monetization** button that will lead you through a wizard where you will choose the monetization model and any respective fees.
100-
98+
Follow the monetization wizard to configure. Follow the monetization wizard to configure your pricing model.
10199
![Monetization wizard](./images/monetization_wizard.png)
102100

103-
## Changing monetization
104-
105-
You can always change the monetization settings of your Actor. Note that any changes made to an already published Actor will always take 14 days to come into effect, to give users of your Actor, many of whom might be using it in their critical business flows, time to prepare for the change. To change the monetization, use the same wizard as for the setup, found in the Monetization section of the Actor Publication tab.
106-
107-
Also, note that you are allowed to adjust the monetization settings of the Actor only once per month. Please refer to our [Terms & Conditions](https://apify.com/store-terms-and-conditions) for further details and guidelines.
108-
109-
## How you will be paid out
101+
### Changing monetization
110102

111-
Payout invoices are created automatically on 14th of each month. You will be notified and can access the new payout invoice, and any historical invoices, in the [**Settings > Payouts**](https://console.apify.com/account/payouts) section in Apify Console. Once the new invoice is ready, you will need to review and approve it within a week in order for the payment to be processed. Note that if you do not approve the invoice, or let us know of any discrepancies, by the 20th of the month, the invoice will be auto-approved by the system on the 21st. If you have multiple Actors, the total profit is the sum of individual profits, and any losses and gains cancel out.
103+
You can change the monetization setting of your Actor by using the same wixard as for the setup in the **Monetization** section of your Actor's **Publication** tab. Any changes made to an already published Actor will take _14 days_ to come in effect, so that the users of your Actor have time to prepare.
112104

113-
## Tracking profit and user statistics
105+
:::important Frequency of monetization adjustments
114106

115-
As mentioned earlier, you can track your Payouts in the [**Settings > Payouts**](https://console.apify.com/account/payouts) section in Apify Console. Apart from that, you can see statistics on your paid Actors in [**Actor > Analytics**](https://console.apify.com/actors?tab=earnings) tab.
107+
Be aware that you can change monetization setting of each Actor only once per month. For further information & guidelines please refer to our [Terms & Conditions](https://apify.com/store-terms-and-conditions)
116108

117-
![Actor analytics](./images/actor_analytics.png)
118-
119-
To dive deep into numbers for a specific Actor, you can visit the specific Actor insights page in the **Actors > Analytics** section, next to the monetization settings.
120-
121-
![Actor insights](./images/actor-insights.png)
122-
123-
## Setting Actor prices {#setting-actor-prices}
124-
125-
**You choose the price and, in the case of the rental model, a free trial length of your Actor.** Apify can give you advice about the best practices of the most successful Actors, but at the end of the day, we give developers full control over the pricing strategy of their tools. You can browse Apify Store to see how similar tools are priced to give you an idea about any potential competing solutions.
126-
127-
## Promote your Actor
128-
129-
Your paid Actors’ profits are directly related to the amount of paying users you have for your tool. After publishing and monetizing your software, comes a crucial step for your Actor’s success: **attracting users**.
130-
131-
Getting new users can be an art in itself, but there are **two proven steps** you can take to ensure your Actor is getting the attention it deserves.
132-
133-
1. **SEO-optimized description and README**
134-
135-
Search engine optimization (SEO) is the process of improving the quality and quantity of traffic from search engines to your Actor’s page.
136-
137-
In short, SEO-optimized texts improve the likelihood that potential customers will find your Actor when searching for similar tools on the web.
138-
139-
This can be a daunting task to take on your own, so we prepared an in-depth SEO guide to help you **fine-tune your Actor’s title, description, and Readme.**
140-
141-
2. **Promoting your Actor**
142-
143-
Promoting your Actor on the right channels can be the deciding factor in successfully attracting users.
144-
145-
While there are various ways to effectively promote your tool, it is usually best to share it on multiple channels. Here are a few suggestions of channels you can use to promote your Actor:
109+
:::
146110

147-
- **Reddit and Quora**
148111

149-
Find subreddits and Quora topics where the audience might be interested in the tool you developed, for example, the subreddit [r/webscraping](https://www.reddit.com/r/webscraping/). Here you can check an [example](https://www.quora.com/How-do-you-use-TikTok-to-market-your-business/answer/Theo-Vasilis?ch=10&oid=352266072&share=42bb7fae&srid=uFNdtn&target_type=answer) of how you can structure your posts on these social media to promote your Actor.
112+
## Payouts & analytics
150113

151-
- **Social Media (Twitter, Facebook, LinkedIn)**
114+
Payout invoices are generated automatically on the 14th of each month. Review your invoice in the Settings > Payout section within one week. If not approved by the 20th, the system will auto-approve on the 21st.
152115

153-
Don’t underestimate your own network! Your social media connections can be a valuable ally in promoting your Actor. Not only can they use your tool to enrich their own professional activities, but also support your work by helping you promote your Actor to their network.
116+
Track your Actor's performance through:
154117

155-
For inspiration, you can check Apify’s [Twitter](https://twitter.com/apify) or [LinkedIn](https://www.linkedin.com/company/apifytech/) pages, and **don’t forget to tag Apify on your posts** we will retweet and share your posts to help you reach an even broader audience.
118+
- The payout section for financial records
119+
- Actor Analytics for usage statistics
156120

157-
- **YouTube**
121+
![Actor analytics](./images/actor_analytics.png)
158122

159-
Videos are a powerful way to promote your Actors. Short tutorials showcasing your tool’s features and teaching users how to use them can be an effective way to boost your marketing efforts and provide value to your potential customers.
123+
- Individual Actor Insights for detailed performance metrics
160124

161-
For reference, you can check Apify’s [video tutorials](https://www.youtube.com/watch?v=uZ0LYBCjvd4&list=PLObrtcm1Kw6PmbXg8bmfJN-o2Hgx8sidf&index=1).
125+
![Actor insights](./images/actor-insights.png)
162126

163-
- **Publish an article about your Actor**
127+
## Promoting your Actor
164128

165-
Writing an article about your Actor is a great way to attract public attention and gain users.
129+
Create SEO-optimized descriptions and README files to improve search engine visibility. Share your Actor on multiple channels:
166130

167-
You can share your Actor's development journey with other developers, write a tutorial about how to effectively use the tool you created, or visit [Apify Blog](https://blog.apify.com/) for more ideas about how to promote your Actors. For inspiration, you can check this [How to Scrape Google Shopping](https://blog.apify.com/how-to-scrape-google-shopping/) tutorial on our blog.
131+
- Post on Reddit, Quora, and social media platform
132+
- Create tutorial videos demonstrating key features
133+
- Publish articles about your Actor on relevant websites
134+
- Consider creating a product showcase on platforms like Product hunt
168135

169-
Once your article is ready, you can check this list of relevant websites where you can publish your article: [hackernoon.com](https://hackernoon.com/), [techcrunch.com](https://techcrunch.com/), [news.ycombinator.com](https://news.ycombinator.com/), [dev.to](https://dev.to/), [producthunt.com,](https://www.producthunt.com/) [indiehackers.com](https://www.indiehackers.com/)
170136

171-
**Don’t overlook promoting your Actor**. This is arguably the most important step after publishing your tool. Taking advantage of all the possible channels for promotion is what often differentiates very successful Actors with dozens of paid users from Actors with few to no users at all.
137+
Remember to tag Apify in your social media posts for additional exposure. Effective promotion can significantly impact your Actor's success, differentiating between those with many paid users and those with few to none.
172138

173-
Finally, don’t forget to check our pro-tips to take your Actor promotion efforts to the next level.
139+
Learn more about promoting your Actor from [Apify's Marketing Playbook](https://apify.notion.site/3fdc9fd4c8164649a2024c9ca7a2d0da?v=6d262c0b026d49bfa45771cd71f8c9ab).

vale.ini

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -21,3 +21,4 @@ Microsoft.ThereIs = NO
2121
Microsoft.Auto = NO
2222
Microsoft.URLFormat = NO
2323
Microsoft.GeneralURL = NO
24+
Microsoft.RangeFormat = NO

0 commit comments

Comments
 (0)