Docs / Strand / advanced/performance

Performance Optimization

Tips for optimizing workflow performance in Strand.

Overview#

Optimize your workflows for better performance, lower latency, and reduced resource usage.

Best Practices#

Node Configuration#

Efficient Nodes
  • ✅ Use filters early to reduce processing
  • ✅ Minimize unnecessary transformations
  • ✅ Cache frequently accessed data in Variables
  • ✅ Use connectors for reusable configurations

Parallel Execution#

Workflows automatically execute independent nodes in parallel:

code

        ┌─→ [Process A]
[Start] ├─→ [Process B]  ← These run in parallel
        └─→ [Process C]
Parallelism

Nodes that don't depend on each other execute simultaneously, reducing total workflow execution time.

Data Size#

Large Payloads
  • Keep payload sizes reasonable (< 10MB recommended)
  • Filter data early to reduce downstream processing
  • Use JSONPath to extract only needed fields

Template Performance#

HTTP Requests#

Monitoring#

Execution Time#

Monitor workflow execution times in the Runs page:

Resource Usage#

Optimization Strategies#

1. Filter Early#

code

[Event] → [Filter] → [Process]  ← Filter before processing

2. Minimize Transformations#

Only transform data when necessary. Each transform adds processing time.

3. Use Appropriate Node Types#

4. Optimize Templates#

Fast:

jinja

{{ payload.user_id }}

Slower (but more flexible):

jinja

{{ payload | jsonpath('$.user.id') }}

Use the right tool for the job!