AI
AI assists and credits
Enchant.ee has nine small AI helpers scattered through the app — one on the caption box, one on a widget's text field, one on a photo — plus the Composer, which builds a whole page. Eight of the small ones cost a fraction of a credit. One is free. None of them ever runs on its own.
What a credit is
A credit is the unit every AI action is priced in. Composing a whole page costs 1 credit. The small assists cost a tenth, a fifth or three tenths of one — so a single credit buys ten captions, or five bios.
Fractions are exact. The app never rounds a 0.1 up to a whole credit, and a balance of 2.5 really is two and a half.
Two pots, spent in a fixed order
Your balance is really two balances added together, and they are not spent evenly.
| Pot | Where it comes from | Expires? | Spent |
|---|---|---|---|
| Plan credits | Your subscription's monthly allowance, plus the one-time welcome grant | Replaced at renewal — an unused month does not bank | First, always |
| Purchased credits | Credit packs you buy | Never | Only once plan credits run out |
Plan credits are always spent first, because purchased credits are cash and never expire. A price can straddle both: a 0.2 action run against 0.1 of plan credit takes the last 0.1 from your plan and 0.1 from your purchased pot.
Note
What every AI action costs
This is the whole price list. Nothing else in the app spends credits.
| Action | Where | Credits |
|---|---|---|
| Compose my page | Editor → Compose | 1 |
| Add to my page | Editor → Compose | 1 |
| Write captions | Post composer → Caption | 0.1 |
| Add hashtags | Post composer → Caption | 0.1 |
| Rewrite | Edit caption dialog | 0.1 |
| Generate | Editor → inspector → Assist | 0.1 |
| Describe image | Editor → Image widget | 0.1 |
| Write my bio | Edit profile sheet | 0.2 |
| Auto | Photo editor → Adjust | 0.2 |
| Write title & description | Publish and edit-listing dialogs | 0.2 |
| Translate | Editor → inspector → Assist | 0.3 |
| Rewrite (a whole widget) | Editor → widget inspector | Free |
Every button that spends prints its own price as a small trailing tag — · 0.1, · 0.2, · 1 credit. If a button has no tag, it costs nothing.
Watch out
· 0.1 even when you have picked Translate…. The button underneath shows the real price. Read the button, not the pill.Your allowance, and the three daily caps
Credits limit how much you can spend. Three separate caps limit how fast you can spend it. Every assist is available on every plan — no AI feature is locked behind an upgrade, only the size of the allowance changes.
| Plan | Credits a month | Page composes / 24h | Free widget rewrites / 24h | AI assists / 24h |
|---|---|---|---|---|
| Novice | — | 2 | 20 | 30 |
| Élégante | 50 | 15 | 100 | 150 |
| Vedette | 120 | 30 | 300 | 400 |
| Icône | 250 | 50 | 500 | 1000 |
The free plan has no monthly refill
Three things worth knowing about the caps
- They are rolling 24 hours, not calendar days. Nothing resets at midnight. A run you made at 3pm yesterday frees up at 3pm today, so allowance comes back gradually through the day.
- They are three separate pools. All eight paid assists share one count. Page composes share another. The free widget rewrite has its own. A day spent writing captions can never lock you out of composing a page.
- A refunded run doesn't count. If an assist failed or you cancelled it, it does not eat a slot. The free widget rewrite is the deliberate exception — see its own section.
Where your balance lives
Open Account → Settings and find the card titled AI credits (What the page composer has left.). Everything about your balance is in that one card.
- Your total balance, large, at the top — for example
2.5. - A breakdown line underneath: how many come from your plan, how many are purchased if you own any, and refreshes with a date — but only when a refill is genuinely coming.
- Generations today — a meter of page composes used against your daily cap.
- AI assists today — a meter of assist actions used against your daily cap.
- Top up — one row per credit pack you can buy. See below.
- Get more credits — opens the plans dialog. It appears only on a free plan, and only when you are at zero or have hit today's compose cap.
There is no meter for the free widget rewrites. That count only ever appears inside the widget inspector, and only when you are nearly out of them.
Note
Buying a credit pack
Packs are one-off purchases. They land in the purchased pot, they are spent only after your plan credits are gone, and they never expire — including if you cancel a paid plan later.
| Pack | Price |
|---|---|
| 10 credits | $1.49 |
| 50 credits — the row reads Never expire · best value | $4.99 |
| 100 credits | $6.49 |
- Open Settings and find the AI credits card.
- Under Top up, tap the pack you want.
- The row's subtitle changes to Opening checkout… and your browser leaves Enchant.ee for the payment page.
- Pay. The checkout may offer a quantity stepper — buying two of the 50-credit pack grants 100.
- The credits arrive on your balance once the payment is confirmed.
Watch out
If a pack row fails to open, you see Couldn't open checkout. Try again in a moment — repeated taps in quick succession are briefly limited.
| Setting | Where | Type | Values | Default | Plan |
|---|---|---|---|---|---|
| Credit pack | Settings → AI credits → Top up · Composer → Or buy a pack | Picker (three rows) | 10 credits $1.49 · 50 credits $4.99 · 100 credits $6.49 | — | All |
How every assist behaves
The eight paid assists are scattered across the app, but they all behave the same way. Learn it once.
- Nothing runs on its own. No assist fires without you tapping it. Uploading a photo never triggers an analysis; typing never triggers a rewrite.
- A sparkle pill opens a panel below the field — never a floating popover that covers what you're writing.
- Results are cards you tap. Tapping one applies it and keeps a ring around it so you can see which you chose. You can keep tapping between them until the panel closes.
- Applying a result does not save it. The assist fills a draft field. You still have to tap Save, Post or Publish.
- Regenerating is a fresh charge. Every re-tap of a spending button spends again. Only Use saved description is free on a re-run.
- One run at a time. Tapping again while a run is in flight cancels the first and throws its result away — and refunds it.
- Refusals are quiet. A problem shows as a small line of text under the controls, announced to screen readers. Never a red toast.
A credit is only spent when the writer answers
Running assists in very quick succession is briefly limited across your whole account. Trip it and you get A moment — you're going fast. Waiting a few seconds clears it.
Write captions
0.1 credits. Writes up to three ready-to-post captions for the post you are composing, from your draft text, an optional hint, the widget you attached, and a summary of what is on your page.
Where: the post composer → the Caption box → the sparkle button in the box's icon row, beside the emoji and mention buttons. Its screen-reader label is Write the caption for me. The panel only exists once you have chosen a post type.
- Open the post composer and pick a post type — a text card, or a widget.
- In the Caption box, tap the sparkle button. A panel opens below it.
- Optionally type a hint into What's it about? (optional) — up to 200 characters.
- Optionally tap one vibe chip. Tapping the active chip again clears it, and with no vibe the writer matches your own tone.
- Tap Write captions.
- Up to three cards appear. Tap one to put it in the caption box.
- Tap Regenerate for a different set — that is another 0.1.
| Setting | Where | Type | Values | Default | Plan |
|---|---|---|---|---|---|
| What's it about? (optional) | Post composer → Caption → sparkle panel | Text | Free text, up to 200 characters | Empty | All |
| Vibe | Post composer → Caption → sparkle panel | Picker (tap the active chip to clear) | Casual · Hype · Minimal · Story | None | All |
Limits
- It reads up to 280 characters of your draft, and up to 2,000 characters of a summary of your page.
- It writes 1 to 3 captions, each at most 270 characters — deliberately under the 280-character post limit, so you can add an emoji or a handle in front.
- The caption box's own counter turns red past 260 of 280.
Watch out
If there is genuinely nothing to work from — no text, no hint, no widget — the request is refused before any charge. If the writer comes back with nothing you get Nothing came back — add a hint and try again.
Rewrite a caption you already posted
0.1 credits. Offers up to three rewrites of a caption on a post that is already live, all of them sized to fit the 280-character caption limit.
Where: your own post → the ⋯ button in its corner (Post options) → Edit caption. The Rewrite pill sits under the caption box, opposite the character counter.
- On your post, open the ⋯ menu and choose Edit caption.
- Tap the Rewrite pill.
- Pick a mode chip.
- Tap Rewrite and wait.
- Tap a variant card to load it into the box, or tap Again for a fresh set — another 0.1.
- Tap Save. The assist only fills the box; Save is what publishes the change.
| Setting | Where | Type | Values | Default | Plan |
|---|---|---|---|---|---|
| Rewrite mode | Post → ⋯ → Edit caption → Rewrite panel | Picker | Polish · Shorten · Punchy | Polish | All |
Watch out
Only three of the seven rewrite modes are offered here — Expand in particular fights the 280-character limit. Use the post composer's caption panel, with its vibe chips, when you want a different tone. An empty result reads Nothing came back — try another mode.
Assist on a widget field — rewrite and translate
0.1 credits to rewrite, 0.3 to translate. A per-field helper on the text fields of eight widgets in the page editor. Seven rewrite modes, plus a translation mode on two of the fields.
Where: the editor → tap a widget → the inspector panel. Fields that have it grow an Assist pill in their label row. No other field in any widget has it.
| Widget | Field | Longest result it will write | Translate? |
|---|---|---|---|
| Profile | Title | 120 characters | No |
| Profile | Bio | 400 characters | No |
| Product | Description (optional) | 400 characters | No |
| Text | Content | 1,200 characters | Yes |
| Quote | Quote | 400 characters | No |
| Header | Subtitle (optional) | 200 characters | No |
| Marquee | Text (separate items with •) | 200 characters | Yes |
| Subscribe | Subtext (optional) | 200 characters | No |
- Select the widget and scroll the inspector to one of the fields above.
- Tap Assist in the field's label row.
- Pick a mode. Changing mode clears any results already on screen.
- For Translate…, type the target language into the field that appears (Language — e.g. French). The button stays disabled until you do.
- Tap Generate — or Translate, which costs 0.3.
- Tap a result card to write it into the field.
| Setting | Where | Type | Values | Default | Plan |
|---|---|---|---|---|---|
| Assist mode | Editor → widget inspector → Assist panel | Picker | Polish · Shorten · Expand · Friendly · Professional · Punchy · Fix spelling — plus Translate… on the Text and Marquee fields only | Polish | All |
| Target language | Editor → widget inspector → Assist panel, Translate… mode | Text (placeholder: Language — e.g. French) | Any language name, 2 to 30 characters | Empty | All |
What the modes do
Each mode applies its change while keeping your meaning. Fix spelling corrects spelling and grammar only. No mode may introduce a fact, number, name or claim that is not already in your text, and every variant has to fit the field's limit.
What translation does
- Links, @handles, hashtags, names and numbers are kept exactly as you wrote them.
- Text already in the target language comes back polished rather than translated again.
- Some language pairs legitimately run longer than the original. If the translation overflows the field it is trimmed when applied, and a note names the limit it was cut to. On the Marquee field that reads Trimmed to fit 200 characters.
Tip
An empty field shows Write something first and the button stays disabled. An empty result reads Nothing came back — try again in a moment. The assist only ever writes into the one field its pill belongs to.
Write my bio
0.2 credits. Writes your account bio twice in one run: a short version sized for the bio field itself, and a longer one better suited to the Profile widget on your page.
Where: Account → Edit profile → the Write my bio pill beside the Bio label.
- Open Edit profile.
- Tap the Write my bio pill next to Bio.
- Tap the full-width Write my bio button that appears.
- Two cards appear under the hint Short — fits here · Longer — for your profile widget (trimmed if picked). Tap one to load it into the Bio box.
- Tap Save.
What it reads
There are no options — the material is decided for you. It reads whatever is currently typed in the Bio box, plus a plain-text digest of everything you have written on your page and sub-pages: titles, bios, quotes, questions, facts, prices, button labels. Links, colours, fonts and layout settings never go.
Heads up
Limits
- The short version is at most 160 characters — the same limit as the Bio box itself, which is also your public page's description in search results.
- The longer version is at most 400 characters.
- Picking the longer one trims it to 160 on the way in, and tells you so with Trimmed to fit 160 characters.
Watch out
With an empty bio and a page with nothing written on it, the button is disabled and the note reads Add a widget to your page, or write a few words here first.
Describe image
0.1 credits. Looks at one of your uploaded pictures and writes two things: factual alt text for people using a screen reader, saved to your media library, and a short caption with some personality, written into the widget's Caption field.
Where: the editor → select an Image widget → just under the Caption field.
Note
- Select an Image widget and set its picture from your files.
- Tap Describe image.
- The widget's Caption field fills with the generated caption, and the status line confirms the alt text was saved to your library.
The second time is free, and different
Limits
- Alt text is at most 125 characters; the caption is at most 160.
- The writer describes only what is visibly in the picture. It never guesses a name, a place or an intention, and the alt text never begins "image of" or "photo of".
- The alt text is stored on the file itself, so it is reused free everywhere you use that picture again.
Undo reaches this write. If the save to your library fails the run still succeeds and the charge stands — you keep the result, the button just won't offer the free re-use.
Auto photo enhance
0.2 credits. Looks at the photo you are editing and suggests a complete edit — one filter preset plus all five adjustment sliders — as a starting point. Nothing is baked into the picture until you tap Done, and you can move every slider afterwards.
Where: the fullscreen photo editor → the Adjust tab → the Auto button above the sliders. You reach that editor by attaching a photo in the post composer, by choosing an avatar or profile background in Edit profile, or by tapping Upload your own image on a widget's picture field in the page editor. A picture you pick from your Files, or one of the built-in images, goes straight in without the editor.
- Open the photo editor with a picture.
- Switch to the Adjust tab.
- Tap Auto.
- The filter and all five sliders jump to the suggested values, and a one-line note explains the look.
- Change anything by hand, tap Try another look for a different suggestion (another 0.2), or tap Reset to put the sliders back to neutral.
- Tap Done to bake the result into the picture.
The suggestion can only ever set values you could have set yourself — the ranges below are enforced on both sides. "Leave it alone" is a valid answer for a photo that needs nothing.
| Setting | Where | Type | Values | Default | Plan |
|---|---|---|---|---|---|
| Editor mode | Photo editor, segmented control | Picker | Crop · Filter · Adjust | Crop | All |
| Crop aspect | Photo editor → Crop | Picker | 1:1 · 4:5 · 16:9 · Original — the whole row is hidden when the editor is locked to square, as it is for an avatar or a profile background | 1:1 | All |
| Rotate | Photo editor → Crop | Button | +90° per tap | 0° | All |
| Zoom | Photo editor → Crop | Slider | 1× to 3×, in steps of 0.01 | 1× | All |
| Straighten | Photo editor → Crop | Slider | 0° to 360° | 0° | All |
| Filter preset | Photo editor → Filter | Picker | Original · Clarendon · Gingham · Moon · Noir · Warm · Cool · Fade · Vivid | Original | All |
| Brightness | Photo editor → Adjust | Slider | 50 to 150 | 100 | All |
| Contrast | Photo editor → Adjust | Slider | 50 to 150 | 100 | All |
| Saturation | Photo editor → Adjust | Slider | 0 to 200 | 100 | All |
| Warmth | Photo editor → Adjust | Slider | −100 to 100 | 0 | All |
| Vignette | Photo editor → Adjust | Slider | 0 to 100 | 0 | All |
| Reset | Photo editor → Adjust | Button | Returns the five adjust sliders to neutral — leaves crop, zoom and filter alone | — | All |
Limits
- The photo is shrunk to at most 512 pixels on its longest side before it is sent, so a large upload does not become a large transfer.
- Only PNG, JPEG and WebP, and at most 2 MB once decoded.
Watch out
Listing title and description
0.2 credits. Writes a marketplace title and description from what your listing actually contains.
Where — two places:
- Publishing a page as a template — the Publish your page dialog, reached from a page's menu → Publish to shop.
- Editing a listing you already have — Store → My shop → Listings → edit one, which opens the Edit listing dialog. That surface is seller-only, so it needs a paid plan to reach at all.
In both, the Write it pill sits in the Description label row.
- Open either dialog.
- Tap Write it beside Description.
- Tap Write title & description.
- Both fields fill and the note reads Wrote a title and description.
- Save or publish as normal.
What it reads, and what it writes
- From the publish dialog it reads your seller name and the text on the page you are publishing. From the edit dialog it reads the listing's kind and its current title and description, and is told to improve on them rather than restate them.
- The title it writes is at most 80 characters; the description at most 400 — exactly the two fields' own limits.
Watch out
You can spend this and still not be able to publish
The pill is not everywhere a publish form is. The widget, effect, theme-pack and asset-pack builders, and the inspector's own publish dialog, have no Write it pill — only the two dialogs above.
Rewrite a whole widget — free
Free. Tell a widget what to change in plain language and all of its wording is rewritten at once. It costs no credits at all. Instead it is capped by a count per rolling 24 hours: 20 on Novice, 100 on Élégante, 300 on Vedette, 500 on Icône.
Where: the editor → select a widget → the Rewrite pill in the inspector, directly above Publish this widget. It carries no price tag, which is how you can tell it apart from the paid assists.
The pill appears on the 46 widget types that have wording to change — profile, portrait, bio, header, text, quote, link, button, button group, social, image, gallery, banner, video, contact, subscribe, skills, testimonials, press, posts, stats, rating, timeline, FAQ, schedule, product, price list, booking, tip jar, gear, music, snippet, map, countdown, marquee, status, copy-code, QR code, bookshelf, film log, three things, obsessed, passport, poll, before-and-after and pages. A coin flip, a clock or a spacer has nothing to rewrite, and shows no pill.
- Select a widget in the editor.
- Tap Rewrite.
- Type what you want changed. The empty field shows the idea: make it shorter.
- Press Enter or tap Go. The button reads Rewriting… while it works.
- The widget updates, the panel closes, and a toast confirms Rewritten — Undo puts the old wording back.
| Setting | Where | Type | Values | Default | Plan |
|---|---|---|---|---|---|
| What to change | Editor → widget inspector → Rewrite | Text | Free text; anything past 200 characters is cut | Empty | All |
What it will and won't touch
- Only the wording. Position, size and effects are never changed by a rewrite.
- No new links. Only web addresses already in that widget survive the rewrite. One the writer invented is removed, and email and internal links are held to the same rule.
- Undo works. The toast says so for a reason — one Undo restores the whole previous wording.
Watch out
The count left only appears when you are nearly out — a line under the field reading 3 rewrites left today and counting down. While you have plenty it stays out of the way entirely. Firing rewrites in quick succession is briefly limited too — that one reads One rewrite at a time — try again in a moment.
Composing a whole page — 1 credit
The AI Composer is not an assist, but it spends from the same balance and it is what the credit screens are built around.
Where: the editor's Compose pill, bottom right. It hides while a widget is selected or a sheet is open.
- Two modes, chosen in the brief sheet (Compose your page — Fill in what you have. Skip the rest.): Build my page replaces the page, Add to my page adds to what is there. Add to my page is locked until the page has been saved once.
- Both cost 1 credit, shown on the submit button as
· 1 credit. - A live status line sits under the button: how many credits are left, or No credits left — we'll show you the options., or You've used today's runs. It stays blank while it is loading, so a slow connection never reads as an empty balance.
| Setting | Where | Type | Values | Default | Plan |
|---|---|---|---|---|---|
| Composer mode | Editor → Compose → brief sheet | Picker | Build my page · Add to my page — Add is locked until the page has been saved once | Build my page | All |
A compose that fails or is cancelled before the real work starts is refunded. Once the writing has begun the credit is committed, even if you throw the result away.
Running out
When a compose is refused, the Composer raises a screen instead of an error. It is headed either You're out of credits or That's today's generations, depending on which limit you hit.
It always tells you three things:
- Why. Either you have used every credit on your account, or you have used all of today's page composes — and in that case, that the cap is a rolling 24 hours, so more free up through the day.
- What is actually available to you — a pack, an upgrade, or a refill date if one is genuinely coming. It never offers you something you can't buy.
- That nothing was spent on this try. The refused attempt is free.
Below that sits a Credits left row, an upgrade card when there is a next plan up, an Or buy a pack list, and Not now to close it. If you are already paying and there is genuinely nothing left to buy, you get a Need credits sooner? card with a way to reach a human instead.
Note
What the AI will never do
These are guarantees, not settings. There is nothing to turn on.
- It never runs by itself. Every AI action needs a deliberate tap. There is no background analysis of your photos or your writing.
- It never invents a link or a handle. Any web address, bare domain or @mention in the output that was not in your own material word for word is deleted before you see it. Hashtags are the one exception, because a caption legitimately coins those.
- It never adds a fact you didn't give it. A rewrite may not introduce a number, a name, a price or a claim that wasn't already in your text.
- It never treats your text as instructions. Everything you send is material to be rewritten, never a command — you cannot steer an assist by typing orders into the field it is rewriting.
- It never touches someone else's files. Describe image resolves a picture against your own library only. A file that isn't yours answers That image isn't in your Files. before anything is charged.
- It never guesses about a photo. Image descriptions cover what is visibly there — not who someone is, where it was taken, or what it means.
- It never saves for you. Every assist fills a draft. Save, Post or Publish is always your tap.
- It never silently truncates your input. Text that is too long is refused with a message rather than trimmed, because a half-read draft produces a confidently wrong answer you already paid for. The free widget rewrite's instruction is the one exception — anything past 200 characters is cut.
When something goes wrong
Most of these appear as a quiet line under the control you tapped rather than a banner. The two exceptions are a free widget rewrite that outright fails and a credit-pack row that can't open checkout — those are a brief toast. Unless a message says otherwise, nothing was charged and the attempt does not count against your daily cap.
| What you see | What it means |
|---|---|
| You're out of credits — top up or upgrade to keep going. | Both pots are empty. Buy a pack from Settings, or upgrade. Nothing was charged. |
| You've reached today's AI assist limit — it resets over the next 24 hours. | You still have credits, but you've used today's assist allowance. It comes back gradually, not at midnight. |
| A moment — you're going fast. | You ran assists faster than the app allows. Wait a few seconds. When the app knows exactly how long, it adds that to the message. |
| Cancelled. | You tapped again, or closed the panel, while a run was in flight. The first result was thrown away and refunded. |
| That's a lot of text — trim it down and try again. | Your input is past what this assist accepts. Shorten it — nothing was charged. |
| That didn't go through — adjust the text and try again. | Something in what you sent was rejected. Where the reason is specific the app says so instead — for example that a language name is too long. |
| That image isn't in your Files. | The picture couldn't be matched to your own library. Re-pick it from your files. Nothing was charged. |
| Couldn't read that photo — try again. | The photo editor couldn't prepare the picture to send. This fails before the request, so nothing was charged. |
| The writer didn't answer — try again in a moment. | The model failed or timed out. Refunded — try again. |
| Couldn't reach the server — check your connection and try again. | Your device is offline or the request never landed. Nothing was charged. |
| That isn't available on this account. | The request was blocked as automated. If you are a person on an ordinary browser, email support@enchant.ee. |
| That didn't work — try again in a moment. | An unexpected failure. Refunded. |
| Nothing came back — add a hint and try again. | The caption writer had too little to work from. Add a line to What's it about? (optional) and run it again. |
| No hashtags came back — try again in a moment. | The tag writer returned nothing usable. |
| Nothing came back — try another mode. | The caption rewrite returned nothing. A different mode chip usually does. |
| Nothing came back — try again in a moment. | A widget field's rewrite or translation returned nothing usable. Try again, or pick a different mode. |
| Write something first | The field is empty, so there is nothing to rewrite or translate. Not an error — the button is simply disabled. |
| That's today's rewrites. They come back over the next 24 hours. | Free widget rewrites are used up for now. Rolling 24 hours, so some return through the day. |
| One rewrite at a time — try again in a moment. | A rewrite is already running, or you fired several in quick succession. Wait a moment and try again. |
| That came back the same. Try saying it another way. | The rewrite produced no change. Be more specific about what you want different. |
| Couldn't rewrite that. | A free rewrite failed — including when the widget holds too much content to rewrite in one go. No credits are involved either way, but the slot is used. |
| Couldn't load your credits. | The balance card failed to load. Tap retry — your balance itself is fine. |
| Couldn't open checkout | A credit-pack tap failed to reach the payment page. Try again in a moment — repeated taps in quick succession are briefly limited. |
| Selling needs a paid plan. | Publishing to the shop needs a paid plan. Note that the Write it assist that fills the form does not, so this can appear after you've spent 0.2. |
Does regenerating cost again?
Do unused plan credits roll over?
Do my daily limits reset at midnight?
Is any AI feature locked behind a plan?
Where do I find one of these settings again?
Something here wrong or missing? Email support@enchant.ee.