What can you build with Filestack?
Each pattern uses upload, transform and delivery together. Start on a free key, ship a focused first version with real files, then scale on the same URLs.
Choose the guide that matches your next step
These articles were published on the Filestack blog from August 5 through August 21, 2026. Start from zero, connect your stack or build a complete small project.
More reading
Connect Filestack to Your Existing Stack, React, Next.js and Plain HTML in Under 20 Lines
Use the same upload pattern in three common front-end stacks.
Free Plan Limits Explained, What Happens When You Hit Them and What to Do Next
Understand how usage behaves as a project starts to grow.
Creating a Photography Portfolio With Filestack
Build a consistent, fast portfolio from mixed source images.
Is the Filestack Free Plan Enough for Your Project
Match prototypes, side projects and internal tools to the free plan.
10 Companies That Are Using Filestack and How They Are Using It
See real product patterns drawn from published Filestack case studies.
New to Filestack, 10 Free Resources to Get Started
Follow a practical reading order from first test to deeper reference.
How to Crop, Resize and Compress Images on the Filestack Free Plan
Compare three image operations against the same source file.
How to Test What Your Own Filestack Key Can Do
Run a compact capability check against your own key and file.
How You Start Using the Filestack API
Make the first store request and use the handle that comes back.
10 Things You Can Do with the Filestack Free Plan
See ten live URL-based examples across images, documents and delivery.
See each transformation in under a minute
Watch the full Filestack Transformations Features playlist, or jump straight to the task you need. Every walkthrough maps back to a recipe below.
When your first version becomes a production workload
Keep the same upload and delivery foundation, then add the capabilities that need more processing power as your product grows.
- Extract and understand documentsAdd OCR and document detection.
- Analyze image contentAdd tagging, captions and safe-for-work scoring.
- Process production videoAdd video conversion and larger workloads.
Questions before you start
What can the Filestack free plan do with image transformations?
The Filestack free plan supports image, document and delivery transformations directly in the URL, including resizing and cropping, face-aware cropping, face blurring and pixelation, PDF conversion, watermarks, borders and filters, ZIP archives, JavaScript and CSS minification, and full-page screenshots. Face detection is included. OCR, tagging, safe-for-work scoring, and other intelligence tasks are available on paid plans.
Does the free plan include OCR?
No. OCR, document detection, and image captioning are available on paid plans.
Which face task works on the free plan, crop_faces or smart_crop?
crop_faces is available on the free plan for face-aware crops. detect_faces, blur_faces, and pixelate_faces are also included. smart_crop, which uses saliency rather than face detection, is available on paid plans.
How many transformation URLs can a free key serve?
The free plan includes 1,000 transformations, 500 uploads, 1 GB of bandwidth, and 1 GB of storage per month, with a 20 MB maximum file size. Each unique transformation URL uses one transformation; cached repeat views use bandwidth.
Do these URLs need the API key in them?
Usually not. A delivery URL ending in a stored file handle can resolve the account from that handle. Tasks without a trailing handle, including urlscreenshot and missing-file fallbacks, require your publishable API key. Replace the YOUR_API_KEY placeholder with your own key.
What does the fallback task serve when a handle is missing?
The fallback task serves a stored stand-in image when the requested handle is unavailable. Store the fallback at the dimensions you want to deliver and use a valid 20-character file handle.
Recipe library
38 tested URLs. Preview the result, inspect the code and copy the format you need.
Every avatar shape out of one portrait
Use crop_faces on the free plan to keep a detected face centered at every output size. Create circular, square, rounded, or responsive avatars from one portrait. Smart Crop is available on paid plans.
Avatar, circular
A round profile picture, cropped to the face.
Avatar, square
The same crop, left square for CSS to round.
Avatar, soft corners
A rounded rectangle ready for profile cards and account pages.
Avatar, retina pair
Create a two-entry srcset at 200px and 400px for sharp avatars on standard and high-density displays.
2x: crop_faces=mode:thumb,width:400,height:400/output=format:webp · 36 KB
One original, every size the front end asks for
Use one stored original for every responsive size and shape. auto_image automatically delivers a supported image format based on the browser.
Banner, 1200 x 400
A wide hero crop from any source shape.
Open Graph card
1200 x 630, the social preview size, at quality 82.
Thumbnail, 320
Grid and list thumbnails, WebP at quality 80.
Responsive set
Create responsive images at 480, 768, 1024 and 1600 pixels wide from one original.
Also 768px 121 KB · 1024px 218 KB · 1600px 506 KB
Negotiated format
WebP to browsers that accept it, the source format to the rest.
Compressed as-is
Smaller bytes, same dimensions and same format.
Upright phone photo
Correct phone-photo orientation from EXIF data before resizing, so images display upright across browsers.
Find the faces, then blur, pixelate or crop them
Detect faces on the free plan, then use their coordinates to blur, pixelate, crop, or build a custom redaction flow.
Faces blurred
Every detected face softened, the rest of the frame intact.
Faces pixelated
The same redaction, as blocks rather than a blur.
Redacted region
Blur any rectangular region you specify, including areas beyond detected faces.
Face coordinates
A JSON box list, for building your own redaction UI.
[
{
"id": 1,
"x": 1169,
"y": 227,
"width": 155,
"height": 217
},
{
"id": 2,
"x": 539,
"y": 309,
"width": 152,
"height": 208
},
{
"id": 3,
"x": 203,
"y": 238,
"width": 152,
"height": 207
},
{
"id": 4,
"x": 876,
"y": 318,
"width": 142,
"height": 207
}
]One face, alone
Crop a single face by its id. Take the ids from detect_faces, which lists faces in detection order.
PDFs resized, split, and made out of images
Resize or split PDFs, or convert an image into a one-page PDF. DOCX output is not supported by this transformation, and extracting text with OCR requires a paid plan.
Print-ready A4
Every page converted from US Letter to A4, ready for a European printer.
A4 landscape
The same conversion, rotated.
First three pages
Pages one to three of five, as their own PDF.
Image to PDF
Any image as a one-page PDF.
Document facts
Page count, page size with the paper name, PDF version, encryption and form flags.
{
"created": "2026-08-12T14:24:48Z",
"encrypted": false,
"hasform": false,
"hasjavascript": false,
"isoptimized": false,
"istagged": false,
"pages": 5,
"pagesize": {
"height": 792,
"paper": "Letter",
"width": 612
},
"pdfversion": "1.4",
"protected": false,
"title": "photobook",
"updated": "2026-08-12T14:24:48Z"
}Borders, vignettes and watermarks in the same URL
Add a photographic falloff with vignette, combine image sources with collage, or turn them into a looping GIF with animate.
Signed and watermarked
Your mark composited over the image at 30 percent, bottom right.
Framed
Border and drop shadow in one chain.
Vignette
Darkened corners, real photographic falloff.
Polaroid
A photo-print border with the deep bottom margin.
Torn edge
A ragged paper edge on all four sides.
Black and white
Threshold conversion, not a desaturation.
Contact sheet
Several handles tiled into one image.
Animated GIF
Turn several stored images into one looping GIF.
Caching, fallbacks and archives at the edge
Capture any public web page with urlscreenshot, or improve delivery with caching, fallbacks, archives, and minification.
Page screenshot
Capture a full public web page with mode:all or a 1024 x 768 viewport with mode:window. Add your API key and the public web address to the URL.
One hour cache
Sets the CDN expiry in seconds.
Missing-image fallback
Show a stored fallback image when the requested file is unavailable. Store it at the dimensions you want to deliver.
One download, many files
Bundle multiple stored files into a single ZIP download.
Minified JavaScript
Strips whitespace and dead code from a stored script.
const client=filestack.init(API_KEY);function openPicker(a){return client.picker({accept:["image/*","application/pdf"],maxFiles:10,fromSources:["local_file_system","url","webcam","googledrive"],storeTo:{location:"s3",access:"public"},onUploadDone:function(b){const c=b.filesUploaded.map(function(a){return a.handle});a(c)}}).open()}function avatarUrl(a,b){return"https://cdn.filestackcontent.com/"+API_KEY+"/crop_faces=mode:thumb,width:"+(b||400)+"/circle/output=format:webp/"+a}Minified CSS
The same for a stored stylesheet.
.recipe-card{background-color:#fff;border:1px solid #e7e6e7;border-radius:15px;padding:0;overflow:hidden}.recipe-card:hover{border-color:#ef4a25}.recipe-card .result{display:block;width:100%;height:auto;background:#ebe8ea}.recipe-card .chain{font-family:"JetBrains Mono",monospace;font-size:12px;line-height:1.7;color:#4b3246;word-break:break-all}Three ways to retrieve file data as JSON
Retrieve image dimensions, file metadata, or a new stored-file handle for use in your application. Find detect_faces in the face-recipes section.
Dimensions
Width and height without downloading the image.
{
"height": 1024,
"width": 1536
}File facts
Filename, mimetype, size, upload date and the writeable flag.
{
"filename": "wide.png",
"mimetype": "image/png",
"size": 2671813,
"uploaded": 1786542975519.04,
"writeable": true
}Stored copy
Save a processed result as a new file and use its handle in later workflows. Each saved result counts as one upload.
{
"filename": "default-avatar.webp",
"handle": "HQDQHKKmSGqbSOMVVwfk",
"size": 36602,
"type": "image/webp",
"url": "https://cdn.filestackcontent.com/HQDQHKKmSGqbSOMVVwfk"
}Use the new handle with workflows such as missing-image fallbacks.
No recipe matches that
Try a task such as crop_faces, a format such as PDF, or choose another category.