GrapeCity’s Spread.Services philosophy comes down to four elements: performance, flexibility, compatibility, and a small footprint.

Fast performance

Spread.Services is built for maximum performance. Our Excel-compatible server component is lightning-fast, with configurable high-performance attributes.

Flexible themes and components

Empower users with customizable themes, configurable components, summary data, custom styles, embedded drawing objects, integrated calculation engine, and more.

Seamless Excel compatibility

Excel compatibility is seamless, including pivot tables, comments, charts, conditional formatting, data validation, formulas, shapes and pictures, sparklines, and tables.

Small footprint

Spread.Services has a small memory footprint ideal for serverless application scenarios using Azure Functions. At 3.7 MB, the assembly file size is optimized for processing large Excel documents quickly and efficiently.

SpreadJS JSON support

Consume JSON data with the fastest API available when you use Spread.Services with SpreadJS

Xamarin.iOS support

Add speed and power to your native mobile apps - most Spread.Services features are supported in Xamarin.iOS. Calc engine support is not currently available for Xamarin.iOS.

Explore the Features of Spread.Services

Cross platform

Supports multiple platforms including .NET Core, .NET Framework, and Mono

VSTO style API

Create custom styles using the same style elements used in Visual Studio Tools for Office (VSTO)

Excel compatibility

Seamlessly import and export Excel-compatible XLSX files with no Excel dependency

Workbooks and worksheets

Create, import, export, use passwords, add sheets, activate, configure, delete, and protect

Pivot and Excel tables

Create Excel tables of data, and add pivot tables to automatically count, total, or average the data

Formulas (450+ Excel functions)

Use hundreds of built-in functions and operators to perform complex calculations


Customize series, walls, axes, lines, floors, data labels, and legends

Data validation

Validate whole numbers, decimals, lists, dates, times, text length, and custom values

Conditional formatting rules

Use rules for cell value, average, color scale, data bar, icon sets, top bottom, unique, and expression


Draw small, lightweight charts inside cells to quickly visualize data for improved analysis


Automatically filter a range of cells by number, text, date, color, or icon


Embed drawing objects like shapes arrows, lines, charts, slicers, and pictures in worksheet cells

Range operations

Set values, heights, and widths, cut, copy, paste, hide, insert, delete, and merge cell ranges

Office Web Component (OWC) Replacement

Annotate worksheets with comments on cells to add information about the data they contain

Spread.Sheets interaction

Export to Spread.Sheets via JSON strings for user viewing and editing, then post them back to the server

Complete .NET API to Programmatically Create and Manage Microsoft Excel Spreadsheets

Complete .NET API to Programmatically Create and Manage Microsoft Excel Spreadsheets

GrapeCity Spread.Services gives developers a comprehensive API to quickly create, manipulate, convert, and share Microsoft Excel-compatible spreadsheets. Plus, you can call it from nearly any application and platform, and there is no Excel dependency.

We model our interface-based API on Excel's document object model. This means that you can import, calculate, query, generate, and export any spreadsheet scenario.

Imported or generated spreadsheets can contain references to one another. Some of the many things you can reference include:

  • full reports
  • sorted and filtered tables
  • sorted and filtered pivot tables
  • charts
  • sparklines
  • conditional formats
  • dashboard reports

Spread.Services targets multiple platforms including the .NET Framework, .NET Core, and Mono. Spread.Services is the perfect solution for all of your spreadsheet challenges.

Optionally use Spread.Services with Spread.Sheets

Spread.Sheets Viewer

The Spread.Sheets viewer plays nicely with Spread.Services using JSON strings to let users view or edit the contents of a spreadsheet in a browser window. The viewer sends the changed spreadsheet back to Spread.Services for processing.


Spread.Services works on the server side to open or import Excel template files, send and receive the contents as JSON strings to and from the viewer, and save or export the changed spreadsheet to an Excel file.

Replace the older ExcelIO component from SpreadJS with Spread.Services. Why? The old component could only load and save XLSX files. Spread.Services has an API that lets you modify the content and import and export XLSX files.

What's New in Spread.Services Service Pack 1

Spread.Services SP1 includes enhanced JSON support for SpreadJS! Spread.Services is also available as an upgrade to SpreadJS, and the JSON support will allow SpreadJS customers to consume JSON data with the fastest API available.

  • SpreadJS v11 SSJSON (chart ssjson and data validation ssjson) is now supported
  • Excel PageSetup options are now supported to manage printing
  • Open options are now supported while opening Excel
  • The RefersToR1C1 property in the IName interface is now supported
  • All the Spread.Services features except calc engine are supported on Xamarin.iOS

What's New

Spread.Services Demo

The demo includes a tutorial with steps to begin using Spread.Services to code spreadsheets. The Features section offers sample code for each feature, while the Spread.Sheets Viewer, Excel Reporting, and Excel Templates sections offer sample code for some real-life scenarios.

View Demo


Recent Blogs