AWS Step Functions

Assemble functions into business-critical applications

AWS Step Functions is a serverless function orchestrator that makes it easy to sequence AWS Lambda functions and multiple AWS services into business-critical applications. Through its visual interface, you can create and run a series of checkpointed and event-driven workflows that maintain the application state. The output of one step acts as an input to the next. Each step in your application executes in order, as defined by your business logic.

Orchestrating a series of individual serverless applications, managing retries, and debugging failures can be challenging. As your distributed applications become more complex, the complexity of managing them also grows. With its built-in operational controls, Step Functions manages sequencing, error handling, retry logic, and state, removing a significant operational burden from your team.

Create a Workflow in 10 Minutes

Want to learn how to create a serverless workflow with AWS Step Functions and AWS Lambda? Learn more

Serverless workflow


Build and update apps quickly

AWS Step Functions lets you build visual workflows that enable fast translation of business requirements into technical requirements. You can build applications in a matter of minutes, and when needs change, you can swap or reorganize components without customizing any code.

Improve resiliency

AWS Step Functions manages state, checkpoints and restarts for you to make sure that your application executes in order and as expected. Built-in try/catch, retry and rollback capabilities deal with errors and exceptions automatically. 

Write less code

AWS Step Functions manages the logic of your application for you, and implements basic primitives such as branching, parallel execution, and timeouts. This removes extra code that may be repeated in your microservices and functions.

How it works

  • Overview
  • Error-Handing Pattern
  • Branching & Human Interaction Patterns
  • Chaining Pattern
  • Saga Pattern
  • Overview
  • AWS Step Functions - How it works - Overview
  • Error-Handing Pattern
  • AWS Step Functions - How it works - Error-Handing Pattern
  • Branching & Human Interaction Patterns
  • AWS Step Functions - How it works - Branching and Human Interaction Patterns
  • Chaining Pattern
  • AWS Step Functions - How it works - Chaining Patter
  • Saga Pattern
  • AWS Step Functions - How it works - Saga Pattern

Use cases

Data processing

Step Functions can help ensure that long-running, multiple ETL jobs execute in order and complete successfully, instead of manually orchestrating those jobs or maintaining a separate application. You can also use Step Functions to standardize a machine learning training workflow to improve the accuracy of machine learning models.

Automate tasks

Step Functions provides auditable automation of routine deployments, upgrades, installations, and migrations. You can use Step Functions to easily automate recurring tasks such as patch management, infrastructure selection, and data synchronization, and Step Functions will automatically scale, respond to timeouts, and retry failed tasks.

Modernize a monolith

By using Step Functions to carve off a few tasks from the rest of your codebase, you can tackle the transformation of monolithic applications into microservices as a series of small steps. This allows you to untangle business-critical code safely and at your own pace, without disrupting operations and while you continue to deliver new features.

Application orchestration

Use Step Functions to combine multiple AWS Lambda functions into responsive serverless applications and microservices, without having to write code for workflow logic, parallel processes, error handling, timeouts or retries. You can also orchestrate data and services that run on Amazon EC2 instances, containers, or on-premises servers.

See more use cases »


See more customer testimonials »

Customer videos

What's new

  • date
December 3, 2019

Introducing AWS Step Functions Express Workflows

Express Workflows are a new type of AWS Step Functions workflow type that cost-effectively orchestrate AWS compute, database, and messaging services at event rates greater than 100,000 events per second.

September 18, 2019

AWS Step Functions Adds Support for Dynamic Parallelism in Workflows

AWS Step Functions now supports dynamic parallelism, so you can optimize the performance and efficiency of application workflows.

August 12, 2019

AWS Step Functions Adds Support for Nested Workflows

AWS Step Functions now allows you to orchestrate more complex processes by composing modular, reusable workflows.

See all announcements »

Recent blog posts


Get started with AWS

Sign up for an AWS account

Sign up for an AWS account

Instantly get access to the AWS Free Tier.
Learn with 10-minute Tutorials

Learn with 10-minute Tutorials

Explore and learn with simple tutorials.
Start building with AWS

Start building with AWS

Begin building with step-by-step guides to help you launch your AWS project.

Learn more about AWS Step Functions

Visit the features page
Ready to get started?
Sign in to the AWS Step Functions console
Have more questions?
Contact us