SudoMock
Mockups
DocsPricing
Request a demo
Get Started

Start rendering mockups in minutes

From PSD to product mockup in one API call.

Get Free API Key→Browse Templates
Public status pagePublished API pricingProduct mockup API500 one-time API credits

Site Navigation

SudoMock

Turn reusable PSD templates, artwork, and editable text into production-ready product images through REST API, no-code workflows, native storefront apps, or AI.

SudoMock is a registered DBA
1209 Mountain Rd Pl NE, Ste N
Albuquerque, NM 87110, USA

Product

  • Pricing
  • Dashboard
  • PSD Mockups
  • Changelog
  • Start Free

Developers

  • API Overview
  • MCP Server
  • Quick Start
  • Render API
  • Upload PSD
  • Authentication
  • Error Handling
  • PSD Preparation
  • Integrations

Mockups & Tools

  • All Mockups
  • Apparel Mockups
  • Drinkware Mockups
  • Wall Art Mockups
  • Home & Living
  • By Platform
  • Search Mockups
  • Background Remover
  • Free Tools

Resources

  • All Use Cases
  • T-Shirt Mockup Generator for Print on Demand
  • Tote Bag Mockup Generator for Sustainable Brands
  • Automate Mug at Scale with SudoMock
  • Blog
  • Roadmap
  • All Alternatives
  • vs Placeit
  • vs DynamicMockups
  • vs Adobe Photoshop API
  • vs Static Mockup Generators

Company

  • About
  • Contact
  • Brand Assets
  • System Status (opens in new tab)
  • Feature Requests (opens in new tab)
Blog

Latest Articles

View all →
  • 01Can You Use Mockups on Etsy? The Rule by Listing Type
  • 02Google Merchant Center Image Requirements: 500 x 500 From 2027 and Renders That Meet It
  • 03Shopify Product Image Size: 2048 px, the Real Limits and Files
  • 04Etsy Listing Photo Size: Etsy's Rules and Files That Meet Them

© 2026 SudoMock. All rights reserved.

PrivacyTermsRefundsCookies[email protected]
  1. Blog
  2. /
  3. Guide

PSD Mockup Template Guide: Best Practices for Automation

To make a PSD mockup template ready for automation, convert each design area to a smart object authored at 3000 px or larger. Set its blend mode to suit the material: Multiply for fabrics, Normal for hard surfaces. SudoMock handles high-resolution professional files with unlimited layers.

Published Dec 24, 2025·Updated Oct 1, 2026·7 min read·Beck

Flat geometric artwork in a Design_Front smart object canvas, mapped by its transform box onto a navy t-shirt render

Key takeaways

  • Masks, warps, perspective, layer effects and all 27 Photoshop blend modes render as authored
  • Layer names come back in the API response; renders target the uuid
  • Outputs up to 10,000 px wide; no file size limit over the API, dashboard uploads capped at 300 MB

On this page

  • What Makes a Good Mockup Template?
  • What the Smart Object Does
  • Supported Blend Modes
  • Masks and Clipping Masks
  • Nested Smart Objects
  • Layer Effects on Smart Objects
  • Step-by-Step: Creating Your Template
  • Common Mistakes That Cost a Re-Upload
  • Recommended PSD Structure
  • Test the Smart Object Before You Upload
  • Upload the Template and Read Its Slots
  • Export Options
  • Quick Reference Checklist
  • Related Resources
  • Frequently asked questions
  • Sources

A PSD mockup template is a Photoshop file with a smart object where the design goes. You build it once, upload it once, and every render after that swaps new artwork into the smart object without opening Photoshop.

What Makes a Good Mockup Template?

What a good template carries:

  • High-resolution smart objects: Author the smart object contents at 3000 px or larger for print-ready output
  • Descriptive layer names: Names come back in the upload response: "Design_Front" beats "Layer 1"
  • 27 supported blend modes: From Multiply to Color Burn, all standard Photoshop blends render as authored
  • Live effects and transforms: Warps, perspective, masks, Drop Shadow, Stroke, Glow, Bevel and Blend If render as authored
  • Unlimited layers: Complex multi-layer mockups with no artificial constraints

What the Smart Object Does

In Photoshop, a smart object is a layer that acts as a container. Whatever image you place inside it appears with the same perspective, warp, blend mode and effects as the container. That is how a mockup works: your design goes into the smart object, and it looks printed on the product.

A mockup API reads the smart objects in your PSD and lets you swap their contents with a request. One PSD template renders unlimited mockup variations, one for every design you send it.

Supported Blend Modes

SudoMock supports all 27 standard Photoshop blend modes, and each one renders pixel-perfectly, exactly as authored in your PSD:

27 Supported Blend Modes

All Photoshop blend modes implemented

+ normal, pass through, dissolve
Darken
darkenmultiplycolor burnlinear burndarker color
Lighten
lightenscreencolor dodgelinear dodgelighter color
Contrast
overlaysoft lighthard lightvivid lightlinear lightpin lighthard mix
Inversion
differenceexclusionsubtractdivide
HSL
huesaturationcolorluminosity

Blend Mode Recommendations

  • Fabrics (t-shirts, hoodies): Multiply, so texture shows through the design
  • Hard surfaces (phones, laptops): Normal, for clean, solid colors
  • Glossy materials: Overlay or Soft Light, which add depth
  • Paper and print mockups: Multiply at 80-90% opacity

Masks and Clipping Masks

Masks render as authored. A layer mask on the smart object layer, a mask on a group that contains it, and a clipping mask all shape the design you send the same way they shape it in Photoshop.

Mask TypeWhere to ApplyWhat the Render Does
Layer Mask on SOSmart Object layerShapes every design you send into that layer
Clipping MaskSmart object clipped to a shape layerShows the design only inside that shape
Layer Mask on GroupGroup containing SOShapes the whole group, design included
Mask inside PSBInside Smart ObjectReplaced along with the content you send

Best Practice for T-Shirt/Fabric Mockups

Keep any mask that should shape every design on the smart object layer or on its group, not inside the smart object. A mask inside the embedded PSB is part of the content, so a new design replaces it. For natural fabric integration, pair the mask with Multiply blend mode.

Nested Smart Objects

SudoMock fully supports nested smart objects, with no limit on nesting depth. You can have smart objects inside smart objects, with all transforms and blend modes preserved at each level.

TextExample Nested Structure
📁 Main PSD
├── Background
├── 📦 T-Shirt_Group
│ ├── Shirt_Base
│ └── 📦 Design_Smart_Object ← API targets this
│ └── 📦 Nested_Effect_SO ← Also supported
│ └── Your_Design
└── Shadow_Layer
  • Deep nesting supported: No artificial limits on smart object hierarchy depth
  • All transforms preserved: Warp, perspective, and distort work at every level
  • Blend modes per level: Each nested smart object can have its own blend mode

Layer Effects on Smart Objects

SudoMock renders the layer effects (layer styles) applied to smart object layers:

Effect TypeWhat Renders
Drop ShadowDistance, spread, size, angle, opacity
StrokeInside, outside, and center positions
Inner and Outer GlowAs authored
Bevel and EmbossInner, outer, emboss, and pillow emboss styles
Blend IfThis Layer and Underlying Layer sliders

Effects Inside vs Outside Smart Object

  • Effects on the SO layer: Preserved when content is replaced
  • Effects inside the PSB: Replaced along with the content

Keep decorative effects on the smart object layer itself for consistent rendering across all designs. The feature-by-feature list is on PSD compatibility.

Step-by-Step: Creating Your Template

1 Set Up Your Canvas

Start with your product photo as the base. SudoMock accepts PSDs with these specifications:

  • Format: .psd or .psb, saved from Photoshop CC 2015 or newer
  • Max dimensions: 10,000×10,000px
  • File size: API uploads support files up to Adobe's official PSD file size limit. Dashboard uploads are capped at 300 MB.
  • Color mode: RGB, 8-bit or 16-bit. Other color modes are converted on upload.

2 Create the Smart Object

The smart object is where designs will be placed. This is the most critical step:

  1. Create a new layer or shape where the design should appear
  2. Right-click → Convert to Smart Object (or Layer → Smart Objects → Convert to Smart Object)
  3. Double-click it to open the embedded .psb file
  4. Set the PSB canvas to your design resolution, 3000 px or larger for print
  5. Save and close the .psb

Smart Object Size Limits

The smart object's internal canvas can be up to 10,000×10,000px. The API returns its exact dimensions in the size field of the upload response, and that is the resolution to prepare your designs at.

3 Apply Transforms

Make the design fit your product naturally using Photoshop's transform tools:

  • Edit → Transform → Distort for perspective
  • Edit → Transform → Warp for curved surfaces (mugs, fabric folds)
  • Edit → Transform → Perspective for angled views

All transforms are preserved. A Perspective Warp applied as a smart filter stays live too, so leave it in place instead of baking it into pixels. On Scale plans, the API also returns quad coordinates: the four corner points of the transformed smart object.

4 Set Blend Mode

Choose from 27 supported blend modes. The most commonly used for mockups:

Blend ModeBest ForEffect
multiplyFabrics, paper, woodDesign darkens, texture shows through
normalHard surfaces, screensSolid design, no texture bleed
soft lightSubtle texturesGentle integration, preserves highlights
overlayMetallic, glossyHigh contrast, vibrant colors
screenDark backgroundsLightens, good for glow effects
color burnVintage lookIntense darks, saturated colors

5 Name Your Layers

Layer names appear in API responses. Use clear, descriptive names:

TextGood Layer Naming
✅ Good Names:
├── Design_Front
├── Design_Back
├── Logo_Chest
├── Label_Neck
└── Color_Overlay
❌ Bad Names:
├── Layer 1
├── Layer 1 copy
├── Smart Object 1
└── Group 1

Use the same names across all your templates, so one integration can fill any of them. A render targets each slot by its uuid, so keep a lookup from layer name to uuid rather than relying on the order of the list.

6 Optimize File Size

Smaller files upload faster, and nothing about the render changes:

  • Delete Cropped Pixels: Image → Crop with "Delete Cropped Pixels" enabled removes hidden content outside the canvas
  • Flatten the layers you never address, such as the background and scenery
  • Delete hidden layers you're not using
  • Rasterize text layers that won't change
  • Merge visible layers for non-essential decorative elements

Pro Tip: Smart Object Dimensions

Author the smart object at 3000 px or larger so print output keeps its detail, but size it to the largest output you plan to render. A 10,000×10,000px canvas for a 2000×2000px design area only makes the file heavier.

Common Mistakes That Cost a Re-Upload

Avoid These Before You Upload

  • Rasterized design areas: a rasterized smart object is a plain pixel layer, so it no longer comes back as a slot you can fill
  • Merged layers: merging the smart object with other layers flattens it into pixels for the same reason
  • Hidden smart objects: a hidden smart object is not exposed as a slot, so make every design area visible before you upload
  • Effects inside the smart object: put effects that should apply to every design on the smart object layer, not inside it

Recommended PSD Structure

Here's the recommended layer organization for a mockup template:

Recommended PSD Structure
T-Shirt-Mockup.psd
│
├──Overlays(Group)
└──Texturesoft light 15%
│
├──Design_FrontSmart Object
├──blend:multiply
├──transform:warp
└──size:3500×4000px
│
├──Product(locked)
│
└──Background(flattened)

Test the Smart Object Before You Upload

A two-minute check in Photoshop catches most template problems before the first render:

TextManual Test Steps
1. Double-click the Smart Object layer thumbnail
2. A new tab opens with the Smart Object contents
3. Paste in a test design
4. Save and close the tab
5. Check that the design appears correctly on the product
6. Verify perspective, blend mode, and effects look right

After you upload, render the template once at full size before it goes into production.

Upload the Template and Read Its Slots

Upload the PSD once. The response lists every smart object, text layer, and group layer it found, under the names you gave them, each with the uuid you send back at render time.

Upload Template

curl -X POST https://api.sudomock.com/api/v1/psd/upload \
-H "x-api-key: sm_your_api_key" \
-H "Content-Type: application/json" \
-d '{
"psd_file_url": "https://example.com/tshirt-mockup.psd",
"psd_name": "T-shirt front"
}'
const response = await fetch('https://api.sudomock.com/api/v1/psd/upload', {
method: 'POST',
headers: {
'x-api-key': 'sm_your_api_key',
'Content-Type': 'application/json',
},
body: JSON.stringify({
"psd_file_url": "https://example.com/tshirt-mockup.psd",
"psd_name": "T-shirt front"
}),
});
const data = await response.json();
console.log(data);
import requests
response = requests.post(
"https://api.sudomock.com/api/v1/psd/upload",
headers={
"x-api-key": "sm_your_api_key",
"Content-Type": "application/json",
},
json={
"psd_file_url": "https://example.com/tshirt-mockup.psd",
"psd_name": "T-shirt front",
},
)
print(response.json())
package main
import (
"bytes"
"fmt"
"io"
"net/http"
)
func main() {
payload := []byte(`{
"psd_file_url": "https://example.com/tshirt-mockup.psd",
"psd_name": "T-shirt front"
}`)
req, err := http.NewRequest("POST", "https://api.sudomock.com/api/v1/psd/upload", bytes.NewBuffer(payload))
if err != nil {
panic(err)
}
req.Header.Set("x-api-key", "sm_your_api_key")
req.Header.Set("Content-Type", "application/json")
resp, err := http.DefaultClient.Do(req)
if err != nil {
panic(err)
}
defer resp.Body.Close()
body, _ := io.ReadAll(resp.Body)
fmt.Println(string(body))
}
<?php
$payload = <<<'JSON'
{
"psd_file_url": "https://example.com/tshirt-mockup.psd",
"psd_name": "T-shirt front"
}
JSON;
$ch = curl_init('https://api.sudomock.com/api/v1/psd/upload');
curl_setopt_array($ch, [
CURLOPT_CUSTOMREQUEST => 'POST',
CURLOPT_RETURNTRANSFER => true,
CURLOPT_HTTPHEADER => [
'x-api-key: sm_your_api_key',
'Content-Type: application/json',
],
CURLOPT_POSTFIELDS => $payload,
]);
$response = curl_exec($ch);
curl_close($ch);
echo $response;

The file is fetched from that URL, so it has to download without a sign-in. A signed URL works.

Smart Object Response Structure

What you get after uploading a PSD

SmartObjectResponse
uuidstringrequired
namestringrequired
size{width, height}required
position{x, y, w, h}required
quad[[x,y], ...]optional
blend_modestringoptional
size vs position
size (embedded dimensions)
Original Smart Object canvas
→ Design at this resolution
position (bbox)
Where it renders on mockup
→ Use for previews
JSONExample API Response (trimmed)
{
"success": true,
"data": {
"uuid": "550e8400-e29b-41d4-a716-446655440000",
"name": "T-shirt front",
"smart_objects": [
{
"uuid": "7c3e8f2a-1b4d-4e5f-8a9c-0d1e2f3a4b5c",
"name": "Design_Front",
"size": {
"width": 3500,
"height": 4000
},
"position": {
"x": 450,
"y": 380,
"width": 1200,
"height": 1400
},
"quad": [[450, 380], [1650, 420], [1600, 1780], [420, 1720]],
"blend_mode": "multiply"
}
]
}
}

size vs position

  • size = Original smart object canvas (embedded PSB dimensions)
  • position = Where it appears on the mockup (bounding box)
  • quad = Four corner points if transformed (warp/perspective), returned on Scale plans and null on other plans

Prepare your designs at the size dimensions for best quality.

Ready to Render

Save data.uuid as your mockup_uuid, plus the uuid of each smart object you fill. Every render sends those two values, so this step belongs in your setup, not in your render loop.

Export Options

When rendering mockups, you have full control over the output format and quality:

Export Options
WebP
DEFAULT
Smallest size
Quality: 1-100
PNG
Lossless, transparency
Best quality
JPG
Universal support
Quality: 1-100
JavaScriptRender with Export Options
const response = await fetch('https://api.sudomock.com/api/v1/renders', {
method: 'POST',
headers: {
'x-api-key': 'sm_your_api_key',
'Content-Type': 'application/json'
},
body: JSON.stringify({
mockup_uuid: '550e8400-e29b-41d4-a716-446655440000',
smart_objects: [{
uuid: '7c3e8f2a-1b4d-4e5f-8a9c-0d1e2f3a4b5c',
asset: { url: 'https://your-storage.com/design.png' }
}],
export_options: {
image_format: 'webp', // png, jpg, or webp (default)
image_size: 1024, // 100-10000px wide (default 2048)
quality: 90 // 1-100 (default 90)
}
})
});
const { data } = await response.json();
console.log(data.print_files[0].export_path); // the finished image

The same two requests are walked through step by step in the quickstart.

Quick Reference Checklist

Before Upload

  • .psd or .psb file, saved in RGB
  • Dimensions up to 10,000×10,000px
  • API uploads up to Adobe's official PSD file size limit; dashboard uploads up to 300 MB
  • Design areas are smart objects, not rasterized, and visible
  • Descriptive layer names, the same across templates

Smart Object Settings

  • Blend mode set (multiply for fabrics)
  • Transforms applied (warp, perspective)
  • Contents at 3000 px or larger
  • Positioned correctly on canvas
  • Effects on the smart object layer, not inside it

Related Resources

Preparing a PSD

File requirements and the full build checklist

PSD Compatibility

Which Photoshop features render, row by row

Upload PSD API Reference

Complete documentation for the upload endpoint

Render API Reference

All render options and parameters

API Data Model Guide

Understanding API response structures

No Photoshop?

Alternatives for template creation

Frequently asked questions

Which blend modes does SudoMock support?

All 27 standard Photoshop blend modes: normal, dissolve, darken, multiply, color burn, linear burn, darker color, lighten, screen, color dodge, linear dodge, lighter color, overlay, soft light, hard light, vivid light, linear light, pin light, hard mix, difference, exclusion, subtract, divide, hue, saturation, color, and luminosity.

How do I create a Smart Object in Photoshop?

Select the layer or layers that will carry the design, right-click, and choose Convert to Smart Object, or use Layer > Smart Objects > Convert to Smart Object. Double-click the new layer to open its contents and set that canvas to the resolution you will send designs at, 3000 px or larger for print.

Can I use PSD mockup templates without Photoshop?

Yes, for rendering. You need Photoshop, or a ready-made PSD, only to author the template. Once it is uploaded to a mockup API like SudoMock, every render swaps in your design and returns the finished image without Photoshop.

What's the maximum file size for PSD templates?

API uploads support files up to Adobe's official PSD file size limit. Dashboard uploads are capped at 300 MB. Smaller files upload faster and render the same.

Do layer effects (shadows, strokes) work with Smart Objects?

Yes. Drop Shadow, Stroke, Inner and Outer Glow, Bevel and Emboss, and Blend If on the smart object layer render as authored and stay in place when you replace the content. Effects inside the smart object are part of its content, so a new design replaces them. Keep effects that should apply to every design on the layer itself.

Sources

  1. Preparing a PSD (opens in new tab), SudoMock Docs
  2. PSD compatibility (opens in new tab), SudoMock Docs
  3. Create a mockup from a PSD (opens in new tab), SudoMock API reference
  4. Render a PSD mockup (opens in new tab), SudoMock API reference
B

Beck

CTO

View all posts

On this page

  • What Makes a Good Mockup Template?
  • What the Smart Object Does
  • Supported Blend Modes
  • Masks and Clipping Masks
  • Nested Smart Objects
  • Layer Effects on Smart Objects
  • Step-by-Step: Creating Your Template
  • Common Mistakes That Cost a Re-Upload
  • Recommended PSD Structure
  • Test the Smart Object Before You Upload
  • Upload the Template and Read Its Slots
  • Export Options
  • Quick Reference Checklist
  • Related Resources
  • Frequently asked questions
  • Sources

Related articles

A 3951 x 4800 design canvas labeled size, and the same print on a navy T-shirt render with its position box and quad corners
Technical

Understanding Mockup API Data Models: A Technical Guide

Deep dive into mockup API response structures. Learn how smart object data is organized, what each field means, and how to build robust integrations.

Dec 5, 2025 · 4 min read

Six colorways of one t-shirt PSD rendered by API, one color hex per request
Tutorial

Every T-Shirt Color Variant Mockup from One PSD by API

One PSD with a color smart object renders every t-shirt colorway: one request per color, shown with six real renders.

Oct 1, 2026 · 4 min read

No Photoshop required: a POST /api/v1/renders asset URL holding a sunset design, printed on a t-shirt, mug and poster
Tutorial

How to Create Mockups Without Photoshop

Create professional product mockups without Photoshop using SudoMock API. Automate t-shirt, mug, and poster mockups from $0.002 per render. No design skills needed.

Nov 15, 2025 · 2 min read

Explore by use case

See SudoMock in action for your specific product category

Bulk Mockup Generation API for Enterprise ScalePrint on Demand Mockup Automation for POD SellersT-Shirt Mockup Generator API for Print on DemandHoodie Mockup Generator APIPhone Case Mockup Generator API for Print on DemandSocial Media Mockup Generator API for Content Teams

Your own PSD, rendered via API

Render your own PSD through the API. Start with 500 one-time credits, no card.

Start Free View Docs

Render your own PSD via API with 500 one-time credits.

Start Free · 500 credits, no card