The lowest-cost Serverless platform on the planet Built for Microservices and event-based applications

The real cloud. No Servers. Just Code.

Spotinst Functions utilizes compute from anywhere in the world, from the largest cloud providers to regional bare metal offerings. Functions can be tied to primary data sources, cost savings or both. Spotinst takes care of optimizing deployment and execution.

A fully managed Serverless compute platform that allows running code without thinking about cloud providers. Built to reduce compute & networking costs and application latency by leveraging cloud vendors’ excess compute capacity & network rates.

Spotinst Functions not only lets you avoid dealing with underlying infrastructure but also lets you avoid the pain of managing multiple cloud providers. You can always balance and shift your code to and from any provider at any time.

Getting started is as easy as running a container. No process changes in deployment or languages.


Deploy Your First Function Under 30 Seconds
$ sls create --template-url

Code Examples

 * Implement your function here.
 * The function will get the request as a parameter with query/body properties:
 *      var queryparams = event.query;
 *      var body = event.body;
 *      var uri = event.uri;

module.exports.main = (event, context, callback) => {
    callback(null, {
		statusCode: 200, 
		body: '{"hello":"from NodeJS8.3 function"}',
		headers: {"Content-Type": "application/json"}
# Implement your function here.
# The function will get the event as the first parameter with query/body properties:
# The function should return an Hash

def main(event, context)
    queryparams = event["query"]
    body = event["body"]

        :statusCode => 200,
        :body => '{"hello":"from Ruby2.4.1 function"}'
# Implement your function here.
# The function will get the event as the first parameter with query/body properties:
# The function should return a Dictionary

def main(event, context):
    queryparams = event.get("query", {})
    body = event.get("body", {})

    return {
        'statusCode': 200,
        'body': '{"hello":"from Python2.7 function"}',
        'headers': {"Content-Type": "application/json"}
import com.spotinst.functions.runtime.Context;
import com.spotinst.functions.runtime.GenericResponse;
import com.spotinst.functions.runtime.RequestHandler;

import java.util.HashMap;
import java.util.Map;

 * Please make sure your class implements the "RequestHandler" interface * The return value should be of type "GenericResponse"**/
public class Java8Template implements RequestHandler {
    public GenericResponse handleRequest(JsonObject event, Context context) {
        JsonObject query = new JsonObject();
        String     body  = "";

        //Your function arguments will be available in args.query/args.body;
        if (event.has("query") && event.get("query").isJsonObject()) {
            query = event.getAsJsonObject("query");
        if (event.has("body") && event.get("body").isJsonPrimitive()) {
            body = event.getAsJsonPrimitive("body").getAsString();

        //Build response object
        GenericResponse response = new GenericResponse(200, "{\"hello\":\"from your java8 function\"}");

        //Build response headers
        Map headers = new HashMap<>();
        headers.put("Content-Type", "application/json");


        return response;

Top Features

Improving SLA and High Availability

We don’t depend on a single specific cloud provider as we aim to abstract it for you. Hence, we can always find the best combination of performance, reliability, and resistance to failure.

Avoid single vendor lock-in

Getting the cheapest and fastest compute resource across all the major cloud providers.

Better compute rates

By leveraging Cloud providers’ excess compute capacity, we can always get a better price per compute unit. We have been doing it for years.

Better network rates

By working with multiple cloud providers in multiple locations, we can always get a better network rate (data-transfer out) ranging from $0.08 per GB - $0.009(!) per GB.

Any Cloud

Run your code on your desired infrastructure provider. You can always choose only one cloud provider, many or just all of them.

Any Geo Location

Once deployed Spotinst Functions exposes function URLs that speak HTTP protocol. Traffic is only served over secure HTTP/2 connections.

Advanced Analytics

Spotinst Functions exposes every single thing as a time-series metric. These metrics can be filtered and viewed per individual version of your Function.

Vast Runtime Support

Spotinst Functions supports a wide variety of Runtimes: Node (4, 6, & 8.3), Java 8, Python 2.7, Ruby, Go. And very soon – you’ll be able to ship your Container as Function. (Just specify a docker image to bundle a Function)

Use Cases

Spotinst Functions executes code in response to triggers such as changes in data, shifts in system state, Queues or actions by users.

Spotinst Functions focuses on deploying  HTTP Endpoints so there’s nothing new to learn, just develop with your favorite existing frameworks and deploy powerful web applications that automatically scale up and down and run in a highly available configuration across multiple data centers

Spotinst Function is a natural fit to handle web, mobile, Internet of Things (IoT), and 3rd party API requests and process business logic at any scale.

Spotinst Functions supports an event based on a timer using Cron job syntax. For example, execute code that runs every 15 minutes and clean up a database table based on custom business logic.


Getting Started

Documentation and APIs


Try It Now

$ serverless create --template-url

Get Started For Free

14 days of free trial (No credit card required)

Free Signup

Request A Demo

1:1 demo with a Solutions Architect

Contact Us