Welcome
ZS: AI Product Description SEO is an AI-powered content engine built natively for Shopify. It uses AI to generate product descriptions, blog posts, SEO copy, translations, email campaigns, and social media captions — all directly inside your Shopify admin panel.
This guide walks you through everything: installation, your first generation, advanced features, and troubleshooting. If you're new, start with Install on Shopify. If you already have the app installed, jump to Generate your first content.
What's inside
18 tools covering the content a Shopify store needs:
Install on Shopify
You can install ZS: AI Product Description SEO from the Shopify App Store with a single click. The install process takes under a minute.
- Open the Shopify App Store Go to apps.shopify.com or search for "ZS AI Product Description" in your Shopify admin's app section.
- Click "Install app" You'll be redirected to your Shopify admin. Review the permissions requested (listed below) and click Install app.
- Authenticate Shopify will authenticate the app via OAuth automatically. No code, no API keys, no setup wizard maze.
- Land in the dashboard You're in. The first thing you'll see is the onboarding wizard — fill it out (or skip and configure later).
Free plan
There is no trial period. The Free plan gives you 50 generations every month for as long as you like. Paid plans are charged through Shopify when you approve them.
Fastest way to start
Open any product in your Shopify admin, click More actions and choose Write description with ZS. The writer opens with that product's name and details already filled in.
First-time setup
After installation, the onboarding wizard walks you through 4 quick steps. This takes about 60 seconds and means every generation starts in your tone and brand voice.
Step 1 — Store focus
Tell the AI what your store mainly sells. Example: Handmade leather wallets and bags. The more specific, the better.
Step 2 — Defaults
Set your default tone (professional, friendly, luxury, etc.), target audience, and language. These will pre-fill every time you open the Generate page — but you can always change them per generation.
Step 3 — Brand voice (highly recommended)
Paste 1-2 of your existing product descriptions you love. The AI will mimic this style going forward. This is the single biggest quality booster — don't skip it.
Step 4 — Review & finish
Review your settings and click Finish & start generating. You're now ready to use every feature in the app.
You can change everything later from Settings.
Dashboard overview
The dashboard is your starting point. Here's what you see when you open the app:
Top stats
- Total generations — all-time count of AI generations
- This month — generations used in the current billing period
- Products updated — how many products you've pushed AI content to
- Avg SEO score — average score across all your generations
Quick actions
Cards for the most-used tools: Generate, SEO, Bulk, AI Vision, Translate, Brand Voice. Click any to jump directly into that tool.
Recent generations
Your last 5 generations. Click any to view the full content. Green badge = pushed to Shopify. Yellow = draft only.
Plan widget (right sidebar)
Shows your current plan, monthly usage, and a progress bar. When you hit 80% of your limit, the bar turns red and you'll get a warning. Upgrade your plan to increase the limit.
Generate content
This is the core feature. Generate product descriptions, SEO titles, meta descriptions, and bullet points — all in one shot.
How to use
- Open the Generate page Click "Generate" from the dashboard or sidebar.
- Enter product details Type the product name. Optionally paste features (e.g. "Genuine leather, RFID blocking, 8 card slots, slim design"). The more detail, the better the AI output.
- Pick tone, audience, language These default to your settings but can be overridden per generation. If you have a brand template, select it from the dropdown to apply your saved style.
- Choose what to generate Check the boxes for SEO Title, Description, Meta Title, Meta Description, and/or Bullet Points. You can generate any combination.
- Click "Generate with AI" Wait 3-10 seconds. Results appear on the right with character counts and SEO scores.
- Copy or push to Shopify Use the Copy button per field, or click Select product & push to update a real Shopify product directly.
Output limits
| Field | Character target | Why |
|---|---|---|
| SEO Title | 40-70 chars | Google displays first 60 chars |
| Description | 120-180 words | SEO-optimal length |
| Meta Title | 30-60 chars | Google search result title |
| Meta Description | 140-160 chars | Google search snippet |
| Bullet Points | 5-7 items | Optimal scannability |
SEO score
Each generated field gets an SEO score from 0-100. Scores above 88 are green ("good"). Scores below 88 are yellow ("needs work"). The score considers length, keyword usage, and structure.
Push to Shopify
After generating content, you can push it directly to any product in your store. Here's how it works:
- Click "Select product & push" Opens Shopify's product picker (native UI).
- Pick a product Search or scroll through your products. Click the one to update.
- Review confirmation A modal shows exactly what will be updated (title, description, meta fields). Read carefully — this overwrites existing content.
- Click "Confirm & push" The app updates the product via Shopify's API. You'll see a success toast.
What gets updated
- Title — replaces the product title
- Description — replaces the product description (converted to HTML paragraphs)
- SEO meta title — sets the SEO title under "Search engine listing preview"
- SEO meta description — sets the SEO description
History & restore
Every generation is automatically saved. The History page lets you search, filter, view, and delete past generations.
Search & filter
- Search by product name
- Filter by type — Single, Bulk, Image, Blog, Email, etc.
- Filter by status — Pushed to Shopify, or Draft
View a generation
Click View on any row to see the full content in a modal, including SEO score, tokens used, and timestamp.
Regenerate
Click Regenerate to open the Generate page with the product name pre-filled. Useful if the first version wasn't quite right.
Restore
If you pushed content and want to roll back, find the original product in History and click Restore. The product reverts to its pre-push state (we saved a snapshot at push time).
History retention
| Plan | Retention |
|---|---|
| Free | 7 days |
| Starter | 30 days |
| Pro | 90 days |
| Business | 365 days |
Brand voice templates
Brand voice templates let you save your brand's writing style once, then apply it to every generation. This is the most powerful retention feature in the app.
Why use templates
Without a template, the AI generates generic e-commerce copy. With a template, it sounds like you. Templates teach the AI:
- Your tone (formal, playful, technical, etc.)
- Words you always use (e.g. "handcrafted", "free shipping")
- Words you never use (e.g. "cheap", "amazing")
- Your sentence structure and rhythm
- Keywords you target for SEO
Create a template
- Go to Brand Voice From the sidebar, click "Brand Voice".
- Click "New template" Top right of the page.
- Name it E.g. "Summer collection style" or "Default voice".
- Paste 1-3 example descriptions Your best existing product descriptions. The more varied, the better.
- Add guidelines (optional) Write rules like "Never say cheap", "Always mention free shipping", "Avoid superlatives".
- Add keywords (optional) Comma-separated SEO keywords to weave in naturally.
- Set as default (optional) The default template auto-applies on the Generate page.
- Save
Template limits by plan
| Plan | Templates |
|---|---|
| Free | 1 |
| Starter | 3 |
| Pro | 10 |
| Business | Unlimited |
SEO toolkit
Paste any content and get a detailed SEO analysis. No AI cost for analysis. Optional AI suggestions cost 1 generation credit.
What's analyzed
- Length checks — title, meta title, meta description, body length
- Flesch readability score — how easy is your content to read
- Keyword density — if you provide a target keyword
- Power words — detection of high-CTR words (best, new, exclusive, etc.)
- Sentence structure — average sentence length
- Paragraph structure — is content properly broken up
AI suggestions
After analyzing, click Get AI suggestions. The AI rewrites your content addressing every issue identified, suggests related keywords, and explains what improvements were made. Copy the parts you want to use.
Bulk generation Pro
Generate content for up to 50 products at once. The job runs in the background — you can close the browser and come back later.
How it works
- Pick products from Shopify Use the product picker to select up to 50 products.
- Configure settings Apply a brand template, or set tone/audience/language. These apply to all products in the batch.
- Click "Start bulk generation" The job kicks off immediately.
- Watch live progress Progress bar updates every 2 seconds. Shows completed, failed, remaining.
- Close the browser if you want The job continues server-side. Come back any time to check status.
- Review results When complete, each generated item appears in your History.
Image → AI description (Vision) Pro
Upload a product image and AI Vision analyzes it. It writes complete content — title, description, SEO, bullets, even an alt text — based on what it sees.
How to use
- Go to AI Vision From the sidebar.
- Upload an image Drag and drop or click. Max 5MB. JPG, PNG, WebP supported.
- Add context (optional) Product name, price range, brand, target use. Helps AI be more accurate.
- Pick tone/audience/language
- Click "Analyze & generate" Takes 5-15 seconds. Vision is slower than text-only.
- Push to Shopify Pick a product and apply the generated content.
Image alt text generator
Bulk-generate SEO-friendly alt text for product images. Critical for SEO and accessibility.
How to use
- Open Alt Text from sidebar The app auto-loads your product images.
- Filter "Missing alt text" See only images that need attention.
- Select images Multi-select or "Select all visible".
- Click "Generate" AI reads each image and writes alt text. Pushed to Shopify automatically.
Each image counts as 1/10 of a regular generation against your limit.
Multi-language translator Pro
Translate any content into 30+ languages in a single API call. Perfect for Shopify Markets and international stores.
Supported languages
English · Bengali (বাংলা) · Hindi (हिन्दी) · Spanish · French · German · Italian · Portuguese · Dutch · Arabic · Chinese · Japanese · Korean · Russian · Turkish
How to use
- Paste source content Title + body. Pick the source language.
- Pick target languages Select any number — all translated in one shot for one credit.
- Toggle "Preserve SEO keywords" Keeps brand names and technical terms in original form.
- Click translate Each language appears as a card with copy buttons.
Blog post forge
Generate full SEO-optimized blog posts. Perfect for content marketing and ranking on Google.
Post types
- How-to / Tutorial — Step-by-step practical guide
- Comparison — Compare 2-3 options with pros/cons
- Listicle — Numbered list with brief explanations
- Buyer's guide — Help readers choose with criteria
- Story / Brand — Narrative-driven content
- Trends & insights — Industry analysis
- FAQ-style — Question-answer format
Configurations
- Target keywords — Comma-separated, woven in naturally
- Products to mention — AI references them subtly
- Length — Short (300-500), Medium (600-900), Long (1200-1800)
- Tone & audience
Output
You get: SEO title, meta title, meta description, excerpt, full HTML content with H2/H3 headings, suggested tags, and estimated read time. Toggle between Preview and HTML view.
Credit cost
| Length | Credits |
|---|---|
| Short (300-500) | 1 |
| Medium (600-900) | 2 |
| Long (1200-1800) | 3 |
Email lab Pro
Generate email marketing copy with 3 variations per campaign — perfect for A/B testing.
Email types
- Product launch / announcement
- Abandoned cart recovery
- Promotional / sale
- Welcome / onboarding
- Re-engagement
- Post-purchase / thank you
- Product restock
- Review request
What you get
For each of the 3 variations:
- Subject line (under 50 chars)
- Preheader (under 90 chars)
- Full email body in HTML
- CTA button text
Each variation has a distinct angle (emotional vs rational, short vs detailed). Pick your favorite or run A/B tests with 2.
Collection descriptions
Generate descriptions for your Shopify collection pages. Review the result, then push it to Shopify. Collection pushes cannot be restored, so copy the current text first if you may want it back.
How to use
- Pick a collection From the Shopify collection picker.
- List sample products (optional) Helps AI write more specific copy.
- Pick length Short (80-120), Medium (150-200), Long (250-350 words).
- Generate You get: optimized title, description, meta title, meta description.
- Push to Shopify Updates the collection page directly via API.
FAQ generator
Generate customer-style Q&A from product details. Includes ready-to-paste JSON-LD schema markup for Google rich snippets.
Categories
Pick which categories to cover:
- 💬 General questions
- 🚚 Shipping
- ↩️ Returns & refunds
- 📏 Sizing & fit
- 🧼 Care & maintenance
- 🧵 Materials
- 📖 How to use
- 🛡️ Warranty
Output formats
- Preview — Collapsible Q&A UI you can browse
- HTML — Native
<details>tags, paste into product description - Schema — JSON-LD FAQ schema for Google rich snippets, paste in your page's
<head>
Plans & billing
Four plans. All include the core AI engine. Upgrade only when you need bulk, vision, or multi-language.
Plans overview
| Plan | Price | Generations | Key features |
|---|---|---|---|
| Free | $0/mo | 50/mo | Descriptions, SEO, bullets, tags, alt text, SEO toolkit, FAQ, store pages, review replies, 1 brand template |
| Starter | $9/mo | 100/mo | + Collections, blog posts, Auto Blog, Auto Write, premium model, 3 templates |
| Pro | $19/mo | 500/mo | + Bulk, AI Vision, translator, long blog posts, email and social copy, 10 templates |
| Business | $49/mo | 2,000/mo | + Unlimited templates, 365-day history, priority support |
Annual discount
Save 20% by paying annually. Switch from monthly to annual any time from the Billing page.
How billing works
All charges go through Shopify's billing API. The charge appears on your regular Shopify invoice. We never see your card details — Shopify handles everything.
Cancel anytime
Cancel from the app's Plans page or your Shopify admin. Your store moves to the Free plan as soon as you cancel.
More tools
Start from a Shopify product
In the Product Writer, click Start from a Shopify product. The product's name, type and existing details are loaded, and the copy is written from those facts. The same product is remembered as the push target. You can also pick a product on the From your catalog page and generate with one click.
Bullet points and tags
Tick Bullet Points to add a bullet list under the description, and Product Tags to get 5-8 tags. On push, bullets are saved as a list in the description and tags are added to the product; tags you already had are kept.
Premium model Paid plans
Tick Premium model (GPT-4o) for your most important products. One premium generation uses 3 generations. It cannot be combined with A/B variants.
Auto Write Starter+
Switch it on and every product you add in Shopify gets a description and SEO fields written in your brand voice a few moments later. Products that already have a description are skipped unless you change that setting. Use Try on my newest product to test it. Each product uses 1 generation.
Auto Blog Starter+
Choose a blog, a time of day and (optionally) a list of topics. One post is published each day at that hour. With no topic list, topics are chosen from your products. Save your settings, then use Publish one now to test. If your generations run out, that day's post is skipped.
Fill empty collections Starter+
On the Collections page, Fill empty collections writes and saves a description and SEO fields for collections that have none, up to 5 at a time, based on the products inside each one. Collections that already have a description are not touched.
Save translations to Shopify Pro
In Translate, pick a product, choose your languages and click Save to Shopify translations on a result. The translation is saved for that language in Shopify; your original text stays as it is. The language must be added to your store first, under Shopify Settings → Languages. Translate up to 5 products and save does the same for several products at once.
Store pages and review replies
Store pages drafts About, Shipping, Returns, Privacy, Contact and FAQ pages. Anything you did not tell it, such as a delivery time or return window, is left as a [placeholder]. Review policy pages carefully before publishing; they are not legal advice. Review replies writes a reply to a customer review you paste in.
Shopify Flow
If you use Shopify Flow, the trigger Product content updated starts a workflow every time the app pushes content to a product, with the product and the source (manual, bulk or auto_write).
Settings
Configure global defaults that apply to every generation.
Generation defaults
- Default tone — Pre-fills the tone selector
- Default audience — Pre-fills the audience selector
- Default language — Pre-fills the language selector
Brand guidelines
Free-form rules the AI reads on every generation. Different from brand templates (which are saved profiles). Use this for store-wide rules like "Always mention 30-day returns".
Automation Pro
Auto-push to Shopify — Pre-selects auto-push for bulk jobs, so each product is updated as soon as its content is generated. Single generations always ask you to confirm before anything is pushed. Pushed products can be restored from History.
Notifications
- Email notifications on/off
- Notification email address
Usage limits
Each plan has a monthly generation limit. When you hit 80%, the dashboard shows a warning. At 100%, generating pauses until the count resets on the 1st of the month (or you upgrade).
Credit costs
| Action | Credits |
|---|---|
| Single product generation | 1 |
| Image vision generation | 1 |
| Translation (any number of languages) | 1 |
| Alt text (every 10 images, or part of 10) | 1 |
| A/B variants (3 versions) | 3 |
| Premium model generation | 3 |
| Bulk translate (per product) | 1 |
| Fill empty collections (per collection) | 1 |
| Blog post (short) | 1 |
| Blog post (medium) | 2 |
| Blog post (long) | 3 |
| Bulk generation (per product) | 1 |
When credits reset
On the 1st of each month at midnight UTC. Unused credits do not roll over.
Troubleshooting
"Generation failed" error
Usually a temporary AI service issue. Wait 10-30 seconds and try again. If it keeps failing:
- Check your monthly limit isn't reached
- Refresh the page
- Try a different product (the prompt might have been too long)
- Contact support if it persists
Bulk job stuck
Bulk jobs auto-resume if the server restarts. If a job is stuck for >10 minutes:
- Click Cancel on the current job
- Start a new bulk job with fewer products (10-20 max)
Push to Shopify fails
Common causes:
- Product was deleted — refresh and pick a different product
- Permissions revoked — reinstall the app from Shopify admin
- Rate limit — wait 1 minute and try again
AI output quality is bad
Three things to check:
- Are you providing enough product details? "Premium leather wallet" → bad. "Premium leather wallet, RFID blocking, 8 card slots, slim design, vegetable-tanned" → good.
- Are you using a brand voice template? Without one, output is generic.
- Try a different tone — sometimes "casual" works better than "professional" for your audience.
Frequently asked questions
Will AI replace my copywriter?
No — it makes them 10× faster. Most stores use AI for first drafts and bulk catalog work, then humans polish high-value pages. Best of both worlds.
Is the AI content unique?
Yes. Each generation is unique to your input. The AI doesn't paste from a database. Two stores entering the same product name will get different output (tone, brand voice, settings differ).
Will Google penalize AI content?
No, as long as it's helpful. Google's policy (updated 2024) is that AI-generated content is fine if it serves the user. Our output is original, factually grounded in your product details, and follows SEO best practices.
Can I edit AI output before pushing?
Yes. Use the copy buttons to grab content, edit in your favorite editor, then paste into Shopify directly. Or push and edit in Shopify afterward.
Does the app slow down my store?
Not at all. The app runs in the Shopify admin only. No code is injected into your storefront. Zero performance impact.
What languages can I generate in?
30+ languages including English, Bengali, Hindi, Spanish, French, German, Italian, Portuguese, Arabic, Chinese, Japanese, and more. Multi-language is a Pro feature.
Can I use my own OpenAI API key?
No. The app uses its own OpenAI account, so there is nothing for you to set up.
Is my data safe?
Each store's data is kept separate and is deleted after you uninstall. To write content, the product details you submit are sent to OpenAI, our AI provider. See the privacy policy for every service provider we use.
Contact support
Stuck on something? We're here to help.
Social media captions Pro
Generate platform-specific captions for 6 social networks in one run.
Platforms supported
Each platform gets a distinct caption — not copy-paste across platforms. Captions are tuned to each platform's algorithm and audience.
Style options