Hey @telaholcomb
I wrote an step by step for help you. I think that can be good for your problem.
Since processing 4,000+ prices in a recursive workflow is too WU-intensive, here’s a more efficient approach:
1. Use Bulk Processing with API Workflows (Instead of Recursion)
- Go to Backend Workflows and create a new API workflow (e.g.,
"Batch Price Calculation").
- Set it to process a batch of 200 records at a time instead of all at once.
- Use “Schedule API Workflow on a List” to process these smaller chunks sequentially.
- This reduces WU usage compared to fully recursive workflows.
2. Precompute & Store Price Differences
- Instead of calculating differences in real-time, create a new field or datatype to store precomputed values.
- When new data is uploaded, run the calculations once and save them for quick retrieval later.
3. Offload Heavy Calculations to External Tools (Most Efficient for Large Datasets)
If the dataset is too large for Bubble to handle efficiently:
- Export data to Google Sheets, Airtable, or a database (e.g., PostgreSQL, MySQL).
- Use a script (Python, Google Apps Script, or Make.com/Zapier) to process price differences automatically.
- Re-import the processed data via Bubble’s CSV upload or API.
4. Optimize Data Sorting
- Ensure your prices are sorted by date before processing.
- Store a unique Index ID for each price entry to reference previous records more efficiently.
Best Approach for You?
- If Bubble-only: Use batch API workflows with precomputed values.
- If performance is key: Offload calculations to external tools and sync results back into Bubble.