Features · the full spec

What really happens to every site you order.

No black box. Here is exactly how an order becomes sites, what makes them different from each other, what ships inside each one and what gets checked before you download — with the real limits.

The matrix

Texts × layouts × languages. Every cell is a site.

Choose how many copy variants, designs and languages you want. WhiteCraft pairs every text with every layout in every language and builds them in parallel — up to 100 sites in one order.

Text variants
3
Layouts
4
Languages
2
3 × 4 × 2 =
24Sites
Order total$72
per site$3.00

Auto fields

Leave brand, style, template and page depth on Auto — the AI reads your brief and fills only what you left open. GEO, languages, niche and site count stay yours.

Content depth

Minimal, medium or maximum: how many items each section lists and how rich the copy gets.

Cheaper in bulk

Every site costs $3. From 50 sites in one order, every site costs $2.

Uniqueness

Different where it counts. Down to the markup.

Sites in one order don't just swap headlines. Each one is routed to its own design, assembled from its own blocks and styles, written from its own angle — and its code is reshuffled on the way out.

LayerWhat changes from site to siteExample
Design Template and style variant picked by weighted routing: never three of the same template in a row, and what you ordered in the last 7 days is pushed down. 50+ templates · 200+ variants
Blocks Sections come in alternative layouts; optional sections are added or dropped, and their order is shuffled. hero-b · faq off · gallery ↑
Style Palette, font pair, corner radius, borders, shadows and spacing are drawn from the variant's preset pool. 1,200+ presets
Copy Every text variant gets its own angle — problem, results, trust, process and six more — and its own brand name. angle: trust
Contacts Phone and address generated in the GEO's format and pinned to each brand, so sites don't share one number. +49 30 …
Markup CSS classes renamed, IDs hashed, CMS-style traces and scripts varied, page filenames picked from synonyms. about.html → our-story.html
Images Stock photos (Pexels, Pixabay) or DALL·E 3 images — re-cropped, resized and re-encoded to WebP for each site. ±3% · .webp
The same section in two sites from one order
<!-- site-03 / index.html -->
<section class="k7q-hero" id="s-91ad">
  <h1 class="xa2-t">Good food brings…</h1>
  <a href="our-menu.html"
     class="b9w-cta">View menu</a>
</section>
<!-- site-11 / index.html -->
<section class="p3n-top" id="h-5f1c">
  <h1 class="m0r-h">Healthcare that feels…</h1>
  <a href="treatments.html"
     class="zt4-btn">Explore services</a>
</section>

Illustrative excerpt — real names are generated per site.

Localization

Every GEO gets its own language, formats and fine print.

Pick a GEO and up to five languages per order. Copy, legal pages and interface strings come out in that language; phones and addresses follow the country's format, and prices are written in its currency.

69GEOs
44languages
Europe 34
GBIEDEATCHFRBENLLUESPTITGRSENODKFIISPLCZSKHUROBGHRSIRSEELVLTUABYMDTR
Asia 15
JPKRCNHKTWSGMYPHTHVNIDINPKBDKZ
Middle East 5
ILAESAQAKW
North America 3
USCAMX
South America 5
BRARCLCOPE
Africa 5
ZAEGMANGKE
Oceania 2
AUNZ

Same brief, two GEOs

USDE
LanguageEnglishDeutsch
Phone+1 (415) 555-0148+49 302 5518840
Address1200 Market St, San Francisco, CA 94102Friedrichstraße 44, 10117 Berlin
Legal pagesPrivacy PolicyDatenschutzerklärung
Trackersload unless declinedwait for consent

Formats come from each GEO profile; the values are generated per brand. Consent-first GEOs: the EU plus the UK, Switzerland and Norway.

Languages · 44

  • English
  • Deutsch
  • Français
  • Español
  • Português
  • Italiano
  • Nederlands
  • Svenska
  • Norsk
  • Dansk
  • Suomi
  • Íslenska
  • Polski
  • Čeština
  • Slovenčina
  • Magyar
  • Română
  • Български
  • Hrvatski
  • Српски
  • Slovenščina
  • Ελληνικά
  • Eesti
  • Latviešu
  • Lietuvių
  • Українська
  • Русский
  • Беларуская
  • Türkçe
  • Қазақша
  • العربية
  • עברית
  • فارسی
  • 日本語
  • 한국어
  • 中文
  • ไทย
  • Tiếng Việt
  • Bahasa Indonesia
  • Bahasa Melayu
  • Filipino
  • हिन्दी
  • বাংলা
  • Kiswahili

Inside a site

A whole website. Not a landing page with a footer.

Choose page depth per order — from a single landing page to the full site, or mixed across the batch. Contact, legal, thank-you and 404 pages are built every time.

7 pages 12–19 pages 16–28 pages Example: a clinic template
  • site-07/
    • index.html
    • about.html
    • services.html
    • service-*.html ×3–10
    • team.html
    • doctor-*.html ×3–8
    • contact.html always
    • privacy.html always
    • terms.html always
    • cookie-policy.html always
    • thanks.html always
    • 404.html always
    • assets/

“Landing” builds the home page plus the always-on pages. “Mixed” gives each site in the order its own depth. Page sets differ by template.

Built into every site

Legal pages
Privacy policy, terms and cookie policy, written in the site's language for its GEO
Always
Cookie banner
GTM, GA4 and Meta Pixel go through one consent-gated loader; consent-first GEOs wait for the visitor's yes
Always
Service pages
Contact page with a form, thank-you page, 404 page
Always
SEO basics
Meta title and description, Open Graph, Twitter cards, JSON-LD, favicon, robots.txt
Always
Domain SEO
Canonical URLs, og:url, sitemap.xml and hreflang
With a target domain
Disclaimer
Localized footer disclaimer for health, finance, gambling and dating niches
By niche
Hosting files
_headers and _redirects for Cloudflare Pages and Netlify
Always
Mobile
Responsive layout with a mobile menu
Always

Health score

Every site is scored before you download it.

A 0–100 score and a fix-list for each site, built from 11 structural and 7 content checks. It is a pre-launch check: it shows weak spots before you launch, not after.

Sample report · site-07

92/100
  • Legal pages present
  • Contacts consistent
  • Language matches the order
  • Trackers disclosed

Fix-list

  • warningCanonical domain not set
  • cosmeticUnused CSS class on about page

How the score works

Every site starts at
100
Each error
−12
Each warning
−4
Each cosmetic issue
−1
Any error at all
capped at 49

80 and above reads as good. Below that, check the fix-list before launch.

Structure checks · 11

  • Broken links
  • Broken on-page anchors
  • Empty buttons
  • Leftover placeholders
  • Missing images
  • Forms without an action
  • Empty sections
  • Unused CSS classes
  • Dead CSS selectors
  • Orphan pages
  • Low colour contrast

Content checks · 7

  • Required legal and contact pages
  • Trackers named in privacy and cookie pages
  • Language matches the order
  • Contacts consistent across pages
  • Tell-tale AI phrasing
  • Canonical domain set
  • Mobile readiness

Export & API

Preview in the browser. Ship as a ZIP. Or script it.

Open any finished site in a new tab from your dashboard, download one site or the whole order as a ZIP, or drive everything from your own tools with a personal API key.

What you download

  • all-sites.zip the whole order
  • site-1.zip
  • site-2.zip
  • ⋯
  • site-24.zip
  • site.zip one site
  • index.html
  • contact.html
  • privacy.html
  • …
  • robots.txt
  • _headers
  • _redirects
  • assets/

REST API

# POST /api/v1/generate
curl https://white-craft.com/api/v1/generate \
  -H "Authorization: Bearer $WHITECRAFT_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "geo_code": "DE",
    "language_code": "de",
    "languages": ["de", "en"],
    "vertical_slug": "health",
    "topic_slug": "physiotherapy",
    "description": "Sports physio clinic in Berlin…",
    "content_count": 3,
    "layout_count": 4,
    "page_volume": "medium"
  }'
GET/meAccount and credit balance
GET/form-optionsGEOs, languages, niches, topics
GET/templatesTemplate list
POST/generateCreate an order
GET/ordersList orders
GET/orders/{id}Order status and sites
GET/orders/{id}/downloadWhole-order ZIP
GET/orders/{id}/download/{site}One site as ZIP
  • Personal Bearer keys, issued in your dashboard
  • 60 requests per minute per key by default
  • Same prices and limits as the dashboard
  • Track progress by polling the order status

Put your own offer through it.

15 free credits No card No subscription

Questions? Ask us in Telegram