Overview

Sirv is a cloud-based service designed for the hosting, processing, and delivery of digital media, primarily focusing on images and videos. The platform is engineered to address the specific demands of e-commerce and content-rich websites, where visual assets are critical for user engagement and conversion. Its core functionality revolves around dynamic imaging, allowing users to upload original source images and have Sirv automatically optimize, resize, watermark, and format them on-the-fly based on request parameters.

For developers and technical buyers, Sirv provides a REST API that enables programmatic control over asset management. This includes uploading, retrieving, and deleting files, as well as applying various image transformations. The platform integrates with a Content Delivery Network (CDN) to accelerate global delivery of media assets, reducing latency and improving page load times. This is particularly relevant for websites serving international audiences, as CDN services distribute content from edge servers geographically closer to end-users.

Beyond standard image optimization, Sirv specializes in advanced visual content types such as 360-degree product spins. This feature allows businesses to present interactive, multi-angle views of products, which can enhance the online shopping experience by mimicking the physical inspection of an item. The platform handles the processing and rendering of these spins, generating the necessary image sequences and viewers. Similarly, it supports dynamic video hosting and delivery, applying optimization techniques to ensure efficient streaming across different devices and network conditions.

Sirv's design aims to simplify the workflow for managing large volumes of visual content. Users upload high-resolution source files, and Sirv's system generates optimized derivatives as needed, reducing manual effort in image preparation. This approach can be contrasted with manual image processing, which often requires significant time and specialized software. The platform's emphasis on automation and dynamic processing positions it as a tool for improving website performance metrics, particularly those related to image loading, which are factors in both user experience and search engine optimization. For a broader perspective on image optimization, resources like MDN Web Docs on image optimization provide context on general best practices.

Key features

  • Dynamic Image Processing: Automatically resizes, crops, watermarks, and applies filters to images on demand, based on URL parameters. Supports various output formats like WebP, AVIF, and JPEG.
  • Global Content Delivery Network (CDN): Distributes media assets through a network of edge servers worldwide to ensure fast loading times for users regardless of their geographic location.
  • 360-Degree Product Spins: Enables the creation and delivery of interactive 360-degree product views from a series of images, enhancing product visualization for e-commerce.
  • Image Optimization: Compresses images without significant loss of quality, converts to modern formats, and serves responsive images, aiming to reduce page load times and bandwidth usage.
  • Video Hosting and Delivery: Supports uploading, hosting, and streaming video files with dynamic optimization for various devices and network speeds.
  • REST API: Provides programmatic access for managing assets, integrating with existing workflows, and automating media processes.
  • Image Watermarking: Allows for dynamic application of watermarks to protect intellectual property or brand images.
  • Lazy Loading: Built-in support for lazy loading images and spins, which defers loading of off-screen content until it is needed, improving initial page load performance.

Pricing

Sirv offers a free tier and several paid plans, with pricing based on storage and data transfer volumes. All paid plans include access to core features, with higher tiers offering increased limits and additional support options. Pricing details are current as of May 2026.

Plan Monthly Storage Monthly Transfer Price (per month) Key Features
Free 5 GB 15 GB $0 Image optimization, CDN, 360 spins, basic support
Starter 100 GB 200 GB $19 All Free features, increased limits, email support
Standard 250 GB 500 GB $49 All Starter features, higher limits, priority email support
Professional 500 GB 1 TB $99 All Standard features, further increased limits, phone support
Enterprise Custom Custom Custom Dedicated support, custom SLAs, advanced features

For the most current and detailed pricing information, refer to the official Sirv pricing page.

Common integrations

  • Shopify: Integrates to optimize product images and display 360-degree spins directly within Shopify stores.
  • Magento: Provides extensions and guides for integrating Sirv's image optimization and dynamic media features with Magento e-commerce platforms.
  • WordPress: Offers plugins to connect WordPress sites with Sirv for managing and delivering optimized images and videos.
  • WooCommerce: Specific integration for WooCommerce stores to enhance product imagery and performance.
  • BigCommerce: Integrates with BigCommerce for dynamic image delivery and 360 spins.
  • Custom Applications: Utilizes the Sirv REST API for integration into any custom web or mobile application requiring dynamic media processing.

Alternatives

  • Cloudinary: A comprehensive cloud-based image and video management solution with extensive APIs and a wide range of transformations.
  • ImageKit.io: Offers real-time image optimization, resizing, and a global CDN, focusing on performance and developer experience.
  • imgix: Provides real-time image processing and delivery through a URL-based API, with a strong emphasis on image manipulation and optimization.

Getting started

To get started with Sirv, you typically upload your source images, and then reference them using Sirv's dynamic URL structure. Here's an example of how you might fetch an optimized image using a Sirv URL, followed by a basic Python example for uploading an image via the REST API.

Example: Dynamic Image URL

Once an image is uploaded to your Sirv account (e.g., myimage.jpg in the root folder), you can apply transformations by modifying the URL:

# Original image URL (example path)
https://youraccount.sirv.com/myimage.jpg

# Resized to 400px width, converted to WebP, and quality 80
https://youraccount.sirv.com/myimage.jpg?w=400&format=webp&q=80

# Resized to 300px height, cropped to center, and auto-quality
https://youraccount.sirv.com/myimage.jpg?h=300&crop.location=center&q=auto

Example: Python API Upload

This Python snippet demonstrates how to upload an image to Sirv using its REST API. You'll need your Sirv client ID, client secret, and account domain, which can be found in your Sirv account settings. This example uses the requests library.

import requests
import json

# Replace with your actual Sirv credentials and file path
SIRV_CLIENT_ID = "YOUR_SIRV_CLIENT_ID"
SIRV_CLIENT_SECRET = "YOUR_SIRV_CLIENT_SECRET"
SIRV_ACCOUNT_DOMAIN = "youraccount.sirv.com"
FILE_PATH = "path/to/your/local/image.jpg"
SIRV_FOLDER = "uploads/"

def get_sirv_access_token(client_id, client_secret):
    auth_url = "https://api.sirv.com/v2/token"
    headers = {
        "Content-Type": "application/json"
    }
    payload = {
        "clientId": client_id,
        "clientSecret": client_secret
    }
    response = requests.post(auth_url, headers=headers, data=json.dumps(payload))
    response.raise_for_status()
    return response.json()["token"]

def upload_image_to_sirv(access_token, account_domain, file_path, sirv_folder):
    upload_url = f"https://api.sirv.com/v2/files/upload"
    headers = {
        "Authorization": f"Bearer {access_token}"
    }
    
    with open(file_path, 'rb') as f:
        files = {"file": (file_path.split('/')[-1], f, 'image/jpeg')}
        data = {"path": sirv_folder + file_path.split('/')[-1]}
        
        response = requests.post(upload_url, headers=headers, files=files, data=data)
        response.raise_for_status()
        print(f"Upload successful: {response.json()}")

if __name__ == "__main__":
    try:
        token_data = get_sirv_access_token(SIRV_CLIENT_ID, SIRV_CLIENT_SECRET)
        print("Successfully obtained access token.")
        upload_image_to_sirv(token_data, SIRV_ACCOUNT_DOMAIN, FILE_PATH, SIRV_FOLDER)
    except requests.exceptions.RequestException as e:
        print(f"API Error: {e}")
    except Exception as e:
        print(f"An unexpected error occurred: {e}")

This script first retrieves an authentication token, then uses that token to authorize an image upload to a specified folder within your Sirv account. Ensure you have the requests library installed (pip install requests).