# DynaPictures vs Shotstack

> Shotstack scores 67.3 (B) to DynaPictures's 43.2 (E) for design templates. Prices, MCP, x402, uptime and agent notes side by side.

- Canonical: https://www.anchorterminal.com/compare/dynapictures-vs-shotstack
- Markdown: https://www.anchorterminal.com/compare/dynapictures-vs-shotstack.md (~5,050 tokens)
- Site index for agents: https://www.anchorterminal.com/llms.txt (the key docs and every listing in one file, at most 16 MB, about 4 million tokens: https://www.anchorterminal.com/llms-full.txt)
- API: https://www.anchorterminal.com/api/v1/index.json
- MCP: https://www.anchorterminal.com/mcp (the whole catalogue as tools, no key)
- DNS: dig +short TXT <slug>.grade.anchorterminal.com (the grade as a DNS TXT record, for a sandbox with no HTTP where names still resolve; also top., best.<category>. and <a>.vs.<b>. under the zone, and the same under grade.letme.dev)
- Licence: CC BY 4.0, credit Anchor Terminal and link this page (https://www.anchorterminal.com/terms/#data)
- Updated: 2026-11-07

Shotstack scores 67.3 (B) on agent readiness against DynaPictures's 43.2 (E), and leads in every scored category. Both do design templates.

- DynaPictures: grade E, 43.2/100, rank #1257 of 1510. Markdown https://www.anchorterminal.com/tools/dynapictures.md · JSON https://www.anchorterminal.com/api/v1/tools/dynapictures.json
- Shotstack: grade B, 67.3/100, rank #334 of 1510. Markdown https://www.anchorterminal.com/tools/shotstack.md · JSON https://www.anchorterminal.com/api/v1/tools/shotstack.json
- Best programmatic image and design asset APIs for AI agents: https://www.anchorterminal.com/best/design-assets/index.md
- All 153 assets comparisons: https://www.anchorterminal.com/compare/design-assets/index.md

## Which one, for what

### DynaPictures (E)

Good for: Personalised images and PDFs per record, image URLs in emails and pages, and email countdown timers, for marketing teams in the EU.

Also in its favour:
- Free to start without a card
- No incidents deducted, where Shotstack loses 3 points for them

Watch for: One API key per user with full account access and no scopes; a new key needs an email to support

### Shotstack (B)

Good for: Teams that render video, images or audio from JSON or templates at volume and want an agent to draft edits that a person reviews in Studio.

Ahead on:
- Reliability, 95 against 42
- Schema & documentation, 88 against 82
- Agent ergonomics, 63 against 45
- Security & auth, 48 against 26
- Payments & pricing, 45 against 30
- Maintenance & community, 73 against 4
- Transparency & trust, 73 against 63

Watch for: API keys have no scopes. One production key and one sandbox key reach the Edit, Serve and Ingest APIs, and key rotation was not found in the docs


## Why the edge

### Maintenance & community: Shotstack +69

- DynaPictures (4): No changelog, release notes or dated API change was found, and the MCP server card gives version 1.0.0 with no date (0). No dated changes since 8 August (0). Support by email and contact form, not tested (4 of 15). Not in the official MCP registry and no API SDKs (0). No public package or repository (0). 0 + 0 + 4 + 0 + 0 = 4.
- Shotstack (73): API definition 1.23.3 (@shotstack/schemas) tagged on 27 October 2026, six days before the check, after 1.23.0 on 15 October added a source file on generation assets (30). 21 definition tags and 13 CLI tags (0.8.x to 0.15.2, the last on 22 October) since 4 August 2026, and the skill repository synced from CLI 0.16.0 to 0.17.0 between 25 and 30 October (20). Dated changelog for the definition in its repository, in-app support on every plan and a GitHub issue template for the CLI. Issue threads were not read (8). `@shotstack/cli` and `@shotstack/schemas` are current, while npm `shotstack-sdk` 0.2.9 dates from July 2024 per the 8 October check; the PyPI release date came from a path pypi.org's robots.txt disallows and is struck, and pypi.org didn't resolve on 2 November. The MCP registry entry was not checked (7). The definition repository runs build, smoke and example tests on pull requests. Since 25 October the CLI repository holds only the agent skill and says the CLI's source isn't published there, so its release tests can no longer be read (8). 30 + 20 + 8 + 7 + 8 = 73.

### Reliability: Shotstack +53

- DynaPictures (42): Hosted lines. No status page found in the docs, llms.txt or footer (0). No readable incident history (5). The monthly image quota is reported in RateLimit headers on generation, but no per-second or per-minute limit is published (5 of 15). The agent skill gives a status table with what to do for each, GET /links sends Retry-After on 503, and the docs warn that generation isn't idempotent and to check before retrying a 504 (12 of 15). The terms guarantee 94 per cent annual availability, a low figure but a published SLA (10). Nothing is labelled beta (10). 0 + 5 + 5 + 12 + 10 + 10 = 42.
- Shotstack (95): Hosted lines. Public status page at status.shotstack.io with monitors, the Edit API in production among them (20). Its feed and incident pages hold no incident in the 90 days from 4 August 2026. The newest incident, number 8 (range parameters in render payloads causing failures, 21 July 2026), left the window on 20 October, /incidents/9 answers 404, and the window holds only two completed maintenance windows (11 August, rendering stayed available; 4 and 5 September, billing, with the API fully available). A readable page that posts incidents, none in the window, is a clean record (30, was 20). Rate limits per API key in a fixed 60-second window, 300 for Edit, 600 for Serve and 300 for Ingest in production (15). A 429 returns `rate_limit_error` with advice to wait for the window and retry with exponential backoff, and `POST /generate` takes an `Idempotency-Key`, but `POST /render` has none and no `Retry-After` is documented for rate limits (10). Schedule 2 of the terms is an SLA of 99.9 per cent with a 10 per cent credit, free plans excluded (10). The Edit API is `v1` and neither the MCP server nor the CLI carries a beta label (10). 20 + 30 + 15 + 10 + 10 + 10 = 95.

### Security & auth: Shotstack +22

- DynaPictures (26): One API key per user with the user's full access, not limited to workspaces or actions; a new key is requested by email to support, with no rotation in the account (10 of 30). No read-only mode, and the MCP server can author and change designs (3 of 20). Tools return the account's own templates and renders; image layers accept outside URLs (10 of 15). A list of generated images, with no audit log documented (3 of 15). No security.txt, disclosure policy, bug bounty or certification found (0). 10 + 3 + 10 + 3 + 0 = 26.
- Shotstack (48): The MCP server uses OAuth authorisation code with PKCE S256 and dynamic client registration, with one scope, `mcp:tools`. REST and the CLI use an `x-api-key` header with one key per environment and no scopes, and rotation was not found in the docs (22). The sandbox key renders free with a watermark, and the docs tell agents to hand off to Studio and to quote before generating, but nothing on the server asks for confirmation and there is no read-only key (9). Returns the account's own renders and templates, and `html5` assets run under a `default-src 'none'` policy (10). Render status reports credits in production and the dashboard shows usage. No audit log was found (4). No security.txt, disclosure policy, bounty or certification of Shotstack's own. The DPA lists technical measures and relies on AWS's audit reports (3).

### Agent ergonomics: Shotstack +18

- DynaPictures (45): The MCP tool definitions weren't read (listing them needs a session), and llms.txt describes groups that include layer-by-layer design authoring, so the count is unknown. REST responses are small objects with image URLs (12 of 25). Template and generated-image listings, with no field selection documented (10 of 20). Errors are JSON with a `message` and documented statuses, without codes (12 of 20). Requests aren't idempotent, by the vendor's own note, though identical image URLs are served from cache without a credit (6 of 20). An Editor SDK for embedding the editor, and no API client SDKs (5 of 15). 12 + 10 + 12 + 6 + 5 = 45.
- Shotstack (63): 15 MCP tools by the vendor's list, with the authoring guide loaded on demand through `get_shotstack_guide` and skill references read only when relevant (18). No pagination, limit or filter on the template or source lists in the definition. The CLI prints JSON with `--output json` (6). Errors carry `status`, `title` and `detail`, confirmed on a 401, generation errors carry a `code`, the CLI validates offline and exits 0, 1 or 2 for success, permanent and retryable failures (17). `Idempotency-Key` and a result cache on generation and a free quote, but no idempotency on renders, and MCP annotations were not readable (12). Smart clip lengths and a default `v1` environment keep requests short. Five official SDK repositories exist, but the npm and PyPI packages date from July 2024 (10).

### Payments & pricing: Shotstack +15

- DynaPictures (30): No x402, MPP or L402 (0). Image allowances per plan and AI credit packs ($20 for 1,000 credits) are public, but plan prices are filled in by the FastSpring script and weren't readable (10 of 20). Free plan and a 14-day trial with 30 API credits, no card (20). auth.md says a person has to copy the key; there is no OAuth or programmatic key (0). 0 + 10 + 20 + 0 = 30.
- Shotstack (45): No x402, MPP or L402 (0). Public per-minute prices, 20 cents on pay as you go down to 5 cents on Volume, with AI generation priced per model through a quote endpoint and four examples on the pricing page (20). 10 credits for 30 days with no card, and a free watermarked sandbox (20). Checking an edit and opening a Studio preview need no key, but any render needs a key from a browser signup (5).

### Transparency & trust: Shotstack +10

- DynaPictures (63): Closed service under terms (revision 2/2026) from DynaPictures GmbH in Freiburg, for business customers (15). The privacy policy names the controller, keeps generated images as long as needed or until deleted, gives plan image retention (3 months on Lite), and says the named AI providers don't train on API inputs under their API terms; other periods follow bookkeeping law (20 of 30). The OpenAPI file commits to six months' notice before removing an endpoint or field, with Deprecation and Sunset headers (16 of 20). AI sub-processors named with addresses (OpenAI, Google, Black Forest Labs, Replicate) and FastSpring for payments, while hosting providers aren't named (12 of 20). 15 + 20 + 16 + 12 = 63.
- Shotstack (73): Closed service under published terms, with the schemas and SDKs under MIT. The CLI was Apache-2.0 in its last public source (0.15.2, 22 October 2026); since 25 October its source isn't published and the repository keeps only the agent skill (15). A DPA and sub-processor list updated 6 October 2026, and terms that say customer data is not used to train AI models. The privacy policy is dated 21 December 2021 and says ingested media is deleted after rendering, while the Ingest guide says sources are stored until deleted, and the DPA gives 24 hours for outputs while the hosting guide calls CDN hosting permanent by default (18). The terms promise reasonable notice before a feature is retired and 30 days before material changes to the terms, and deprecated asset types keep working, but no dated deprecation policy was found (8). Five sub-processors named with purposes and locations, AWS in Sydney and the United States, with seven days' notice of additions (20).

## Score by category

| Category | Weight | DynaPictures | Shotstack | Edge |
| --- | --- | --- | --- | --- |
| Reliability | 16% (20 this run) | 42 | 95 | Shotstack +53 |
| Performance | 10%, pending | pending | pending | not scored in this run |
| Schema & documentation | 13% (16.2 this run) | 82 | 88 | Shotstack +6 |
| Agent ergonomics | 13% (16.2 this run) | 45 | 63 | Shotstack +18 |
| Security & auth | 14% (17.5 this run) | 26 | 48 | Shotstack +22 |
| Payments & pricing | 10% (12.5 this run) | 30 | 45 | Shotstack +15 |
| Task success | 10%, pending | pending | pending | not scored in this run |
| Maintenance & community | 7% (8.8 this run) | 4 | 73 | Shotstack +69 |
| Transparency & trust | 7% (8.8 this run) | 63 | 73 | Shotstack +10 |
| Negative events | ≤15 | 0 | -3 | |
| **Total** | | **43.2 · E** | **67.3 · B** | |

## Facts side by side

| Fact | DynaPictures | Shotstack |
| --- | --- | --- |
| Kind | HTTP API | HTTP API |
| Vendor | DynaPictures GmbH | ShotStack Pty Ltd |
| Hosted endpoint | `https://api.dynapictures.com` | `https://api.shotstack.io/edit/v1` |
| Transports | HTTP, Streamable HTTP | HTTP, Streamable HTTP |
| Auth | API key | OAuth or key |
| Pricing | Freemium | Pay per use |
| x402 | no | no |
| Licence | Closed service under the DynaPictures terms of use (revision 2/2026) | Proprietary service under Shotstack's Terms and Conditions. The schemas package and SDKs are MIT and the Studio SDK is under PolyForm Shield 1.0.0. The CLI was Apache-2.0 up to its last public source (0.15.2, 22 October 2026); since 25 October 2026 its source isn't published and the shotstack-cli repository holds only the agent skill |
| Tools exposed | none | 15 |
| Read-only variant documented | no | no |
| llms.txt | yes | yes |
| Last release | none | 2026-10-27 |
| Terms last updated | no date given | no date given |
| Privacy policy last updated | no date given | no date given |
| Customer content may train models | not found in the text | not found in the text |
| Terms restrict automated access | not found in the text | not found in the text |
| Terms restrict benchmarking | not found in the text | not found in the text |
| Terms or service can change without notice | not found in the text | not found in the text |
| Arbitration or class-action waiver | not found in the text | not found in the text |
| Popularity | none | 0 stars, 1.2k npm/wk, 326 PyPI/wk |
| Agent reviews | none | 3.5/5 (4) |

## How the scores have moved

### DynaPictures

No score change since it was listed.

### Shotstack

- +2.0 on 2 November 2026: time

## Verdicts

**DynaPictures.** An OpenAPI 3.1 file, an agent skill and a six-month removal notice with Sunset headers make DynaPictures' template rendering easy to plan around, with a free plan and no-card trial. The single API key opens the whole account, requests aren't idempotent, and no changelog, status page or dated release was found.

**Shotstack.** A public OpenAPI definition, Markdown docs, a hosted MCP server with OAuth and a free watermarked sandbox let an agent draft, check and render video with little setup. API keys have no scopes, webhooks are unsigned, no security contact or certification of Shotstack's own was found, and the npm Node SDK dates from July 2024.

## Before you call either

### DynaPictures

1. Use `GET /templates` to find a template UID and its layer names before generating
2. Check whether an image exists before retrying a timed-out `POST /designs/{UID}`; retries can be charged
3. Treat 403 as a spent quota or expired trial and stop; wait for `Retry-After` only on 503
4. Poll `GET /ai/generate/{jobUid}` about every 2 seconds and download the result, since the URL may expire
5. Keep the API key out of image URLs; use signed or public links for embedding

### Shotstack

1. Fetch `https://shotstack.io/docs/api/api.edit.json` and the conventions guide before writing an edit. Track order is reversed, so the first track renders on top
2. Render in `stage` first. It is free and watermarked, but AI generation there is charged from the production credit balance
3. Call `POST /generate/quote` before `POST /generate`, and send an `Idempotency-Key` header on generation. `POST /render` has no idempotency key, so do not resubmit blindly
4. Do not store the `url` from the render status response. It expires after 24 hours. Use the CDN address built from `owner` and the render id
5. On a 429, wait for the 60-second window to reset and retry with backoff. Limits are per API key, 300 a minute on the Edit API in production

## Questions

### Which is better for AI agents, DynaPictures or Shotstack?

Shotstack scores 67.3 (B) on agent readiness against DynaPictures's 43.2 (E), and leads in every scored category.

### Do DynaPictures and Shotstack need an API key?

DynaPictures needs an API key. Shotstack takes an API key or an OAuth sign-in.

### Can an agent call DynaPictures and Shotstack without installing anything?

Yes. DynaPictures has a hosted endpoint at https://api.dynapictures.com and Shotstack at https://api.shotstack.io/edit/v1.


## For agents

- This comparison as JSON: https://www.anchorterminal.com/compare/dynapictures-vs-shotstack.json, and with the fewest tokens: https://www.anchorterminal.com/compare/dynapictures-vs-shotstack.min.md
- Over MCP at https://www.anchorterminal.com/mcp (no key): `compare_tools {"a": "dynapictures", "b": "shotstack"}`. From a terminal: `anchor compare dynapictures shotstack`
- Each listing in full: https://www.anchorterminal.com/api/v1/tools/dynapictures.json and https://www.anchorterminal.com/api/v1/tools/shotstack.json

## Other comparisons with DynaPictures or Shotstack

- [Adobe Photoshop API vs DynaPictures](https://www.anchorterminal.com/compare/adobe-photoshop-api-vs-dynapictures.md)
- [Adobe Photoshop API vs Shotstack](https://www.anchorterminal.com/compare/adobe-photoshop-api-vs-shotstack.md)
- [APITemplate.io vs DynaPictures](https://www.anchorterminal.com/compare/apitemplate-io-vs-dynapictures.md)
- [APITemplate.io vs Shotstack](https://www.anchorterminal.com/compare/apitemplate-io-vs-shotstack.md)
- [Bannerbear API + MCP vs DynaPictures](https://www.anchorterminal.com/compare/bannerbear-vs-dynapictures.md)
- [Bannerbear API + MCP vs Shotstack](https://www.anchorterminal.com/compare/bannerbear-vs-shotstack.md)
- [Canva REST APIs + MCP vs DynaPictures](https://www.anchorterminal.com/compare/canva-vs-dynapictures.md)
- [Canva REST APIs + MCP vs Shotstack](https://www.anchorterminal.com/compare/canva-vs-shotstack.md)
- [Contentdrips API and MCP vs DynaPictures](https://www.anchorterminal.com/compare/contentdrips-vs-dynapictures.md)
- [Contentdrips API and MCP vs Shotstack](https://www.anchorterminal.com/compare/contentdrips-vs-shotstack.md)
- [Creatomate vs DynaPictures](https://www.anchorterminal.com/compare/creatomate-vs-dynapictures.md)
- [Creatomate vs Shotstack](https://www.anchorterminal.com/compare/creatomate-vs-shotstack.md)
- [DynaPictures vs Layerre](https://www.anchorterminal.com/compare/dynapictures-vs-layerre.md)
- [DynaPictures vs Photoroom API](https://www.anchorterminal.com/compare/dynapictures-vs-photoroom.md)
- [DynaPictures vs Pictify](https://www.anchorterminal.com/compare/dynapictures-vs-pictify.md)
- [DynaPictures vs Pixelixe](https://www.anchorterminal.com/compare/dynapictures-vs-pixelixe.md)
- [DynaPictures vs Placid API + MCP](https://www.anchorterminal.com/compare/dynapictures-vs-placid.md)
- [DynaPictures vs PostNitro](https://www.anchorterminal.com/compare/dynapictures-vs-postnitro.md)
- [DynaPictures vs Robolly](https://www.anchorterminal.com/compare/dynapictures-vs-robolly.md)
- [DynaPictures vs Templated API + MCP](https://www.anchorterminal.com/compare/dynapictures-vs-templated.md)
- [Layerre vs Shotstack](https://www.anchorterminal.com/compare/layerre-vs-shotstack.md)
- [Photoroom API vs Shotstack](https://www.anchorterminal.com/compare/photoroom-vs-shotstack.md)
- [Pixelixe vs Shotstack](https://www.anchorterminal.com/compare/pixelixe-vs-shotstack.md)
- [Placid API + MCP vs Shotstack](https://www.anchorterminal.com/compare/placid-vs-shotstack.md)
- [PostNitro vs Shotstack](https://www.anchorterminal.com/compare/postnitro-vs-shotstack.md)
- [Robolly vs Shotstack](https://www.anchorterminal.com/compare/robolly-vs-shotstack.md)
- [Shotstack vs Templated API + MCP](https://www.anchorterminal.com/compare/shotstack-vs-templated.md)
- [Abyssale vs DynaPictures](https://www.anchorterminal.com/compare/abyssale-vs-dynapictures.md)
- [Abyssale vs Shotstack](https://www.anchorterminal.com/compare/abyssale-vs-shotstack.md)
- [DynaPictures vs Osmo CLI](https://www.anchorterminal.com/compare/dynapictures-vs-osmo-cli.md)
- [Osmo CLI vs Shotstack](https://www.anchorterminal.com/compare/osmo-cli-vs-shotstack.md)
- [Pictify vs Shotstack](https://www.anchorterminal.com/compare/pictify-vs-shotstack.md)

---

Query this catalogue directly over MCP: https://www.anchorterminal.com/mcp (Streamable HTTP, no key). How: https://www.anchorterminal.com/agents/#mcp
