You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: sources/platform/actors/publishing/monetize/pay_per_event.mdx
+55-35Lines changed: 55 additions & 35 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -16,7 +16,7 @@ The PPE pricing model offers a flexible monetization option for Actors on Apify
16
16
17
17
PPE lets you define pricing for individual events. You can charge for specific events directly from your Actor using the [JS](/sdk/js/reference/class/Actor#charge)/[Python](/sdk/python/reference/class/Actor#charge) SDK, or by calling the [PPE charging API](/api/v2/post-charge-run) directly. Common events include Actor start, dataset item creation, and external API calls.
18
18
19
-
The details on how your cost is computed can be found in [Example of a PPE pricing model](#example-of-a-ppe-pricing-model).
19
+
The details on how your cost is computed can be found in [Examples of a PPE pricing](#examples-of-a-ppe-pricing).
20
20
21
21
:::tip Additional benefits
22
22
@@ -293,9 +293,9 @@ However, we acknowledge that some events don't produce tangible results (such as
293
293
294
294
Examples:
295
295
296
-
-_`scraped-product` event_: Each charge adds one product record to the dataset
297
-
-_`processed-image` event_: Each charge adds one processed image to the dataset
298
-
-_`extracted-review` event_: Each charge adds one review to the dataset
296
+
-_`post` event_: Each charge adds one social media post to the dataset
297
+
-_`profile` event_: Each charge adds one user profile to the dataset
298
+
-_`processed-image` event_: Each charge adds one processed image to the dataset
299
299
-_`ai-analysis` event_: Each charge processes one document through an AI workflow (no tangible output, but valuable processing)
300
300
301
301
:::note Additional context
@@ -308,91 +308,111 @@ You can display a status message or push a record to the dataset to inform users
308
308
309
309
If you're not using the Apify SDKs (JS/Python), you need to handle idempotency (ensuring the same operation produces the same result when called multiple times) manually to prevent charging the same event multiple times.
310
310
311
-
## Examples of a PPE pricing model
311
+
## Example of a PPE pricing
312
312
313
-
### Example: simple PPE pricing
313
+
You create a social media monitoring Actor with the following pricing:
314
314
315
-
-`scraped-product`: $0.01 per product - count every product record you return.
316
-
-`scraped-product-detail`: $0.05 per detail - count every enriched product detail you provide.
315
+
-`post`: $0.002 per post - count every social media post you extract.
316
+
-`profile`: $0.001 per profile - count every user profile you extract.
317
+
-`sentiment-analysis`: $0.005 per post - count every post analyzed for sentiment, engagement metrics, and content classification using external LLM APIs.
317
318
318
-
#### Pricing breakdown by user
319
+
:::info Fixed pricing vs. usage-based pricing
320
+
321
+
You have two main strategies for charging AI-related operations:
322
+
323
+
1.**Fixed event pricing** (like `sentiment-analysis` above): Charge a fixed amount per operation, regardless of actual LLM costs
324
+
2.**Usage-based pricing**: Use events like `llm-token` that charge based on actual LLM usage costs
325
+
326
+
Fixed pricing is simpler for users to predict, while usage-based pricing more accurately reflects your actual costs.
Your profit and costs are computed **only from the first two users** since they are on Apify paid plans.
396
+
377
397
The platform usage costs are just examples, but you can see the actual costs in the [Computing your costs for PPE and PPR Actors](/platform/actors/publishing/monetize/pricing-and-costs#computing-your-costs-for-ppe-and-ppr-actors) section.
This example illustrates the key trade-off of PPE pricing: while it's harder for users to predict exact costs upfront, it provides developers with a safer and more scalable revenue model that grows with actual usage.
479
+
This example illustrates the key trade-off of PPE pricing: while it's harder for users to predict exact costs upfront, it provides developers with a safer and more scalable revenue model that grows with actual usage.*/}
@@ -228,7 +228,7 @@ You make your Actor PPR and set the price to be _$1/1,000 results_. During the f
228
228
<div>50,000 results</div>
229
229
</td>
230
230
<td>
231
-
<div>50,000 ÷ 1,000 × $1.00 = $50.00</div>
231
+
<div>50,000 ÷ 1,000 × $1.00</div>
232
232
</td>
233
233
<td><strong>$50.00</strong></td>
234
234
<td>$5.00</td>
@@ -240,7 +240,7 @@ You make your Actor PPR and set the price to be _$1/1,000 results_. During the f
240
240
<div>20,000 results</div>
241
241
</td>
242
242
<td>
243
-
<div>20,000 ÷ 1,000 × $1.00 = $20.00</div>
243
+
<div>20,000 ÷ 1,000 × $1.00</div>
244
244
</td>
245
245
<td><strong>$20.00</strong></td>
246
246
<td>$2.00</td>
@@ -252,20 +252,22 @@ You make your Actor PPR and set the price to be _$1/1,000 results_. During the f
252
252
<div>5,000 results</div>
253
253
</td>
254
254
<td>
255
-
<div>5,000 ÷ 1,000 × $1.00 = $5.00</div>
255
+
<div>5,000 ÷ 1,000 × $1.00</div>
256
256
</td>
257
-
<td><strong>$0.00</strong></td>
257
+
<td><strong>$5.00</strong></td>
258
258
<td>$0.50</td>
259
259
</tr>
260
260
</tbody>
261
261
</table>
262
262
263
+
Your profit and costs are computed **only from the first two users** since they are on Apify paid plans.
264
+
263
265
The platform usage costs are just examples, but you can see the actual costs in the [Computing your costs for PPE and PPR Actors](/platform/actors/publishing/monetize/pricing-and-costs#computing-your-costs-for-ppe-and-ppr-actors) section.
0 commit comments