Semantic HTML, no DIV-soup
Real <article>, <section>, <nav>, <main>, <header>, <footer>. LLMs and crawlers parse structure before content.
We design and build marketing sites on Astro and a headless CMS, migrate them off WordPress, Squarespace or Wix without losing rankings, and hand you the code. Builds launch in 30 days to 11 weeks.
A custom Astro website build is a marketing site designed around your brand and built on Astro, a web framework that ships finished HTML and loads JavaScript only where a page needs it. Content is managed in a headless CMS, Sanity by default, so your team edits in a browser while the site itself stays fast.
The result loads in under a second, carries full schema markup and AI-crawler manifests on every page, and lives in a code repository you own. Elevato builds in seven phases, from discovery and content modelling to launch and 30 days of post-launch optimization.
Most business sites run on one of four stacks. Here is how they differ on the things that decide whether a site ranks and converts.
| Criteria | Astro + headless CMS (our build) | WordPress + page builder | Webflow | Squarespace / Wix |
|---|---|---|---|---|
| How pages are delivered | Finished HTML from the edge, JavaScript only where needed | Rendered by PHP on each request, plus builder scripts | Hosted static pages with Webflow runtime scripts | Hosted template pages with platform scripts |
| Typical page weight | Under 200 KB compressed | 2 to 5 MB with Elementor or Divi | Moderate | Moderate to heavy |
| Core Web Vitals | Pass by design; LCP under 1 s is the contract | Usually needs caching, CDN and cleanup | Usually pass | Mixed |
| Schema and meta control | Full, per page type, validated | Through plugins | Custom code per page | Limited |
| AI crawler controls (robots, llms.txt) | Full | Depends on host and plugins | Limited | Limited |
| Content editing | Sanity Studio, real-time, with preview | WordPress admin | Webflow Editor | Built-in editor |
| Who owns the code and content | You, in your own repository | You, but tied to plugins and host | Webflow hosts it; export is static HTML without the CMS | The platform |
| Security and maintenance | No plugins to patch | Ongoing plugin and core updates | Managed | Managed |
| Design flexibility | Unlimited, custom components | Template or builder constraints | High, within Webflow | Template |
| Best fit | Businesses that win customers through search | Sites that depend on specific WordPress plugins | Design-led small sites | Hobby and very small sites |
A hand-rolled React or Next.js site can match this on speed, but only with server rendering done right and a content model your marketers can use. Most marketing sites do not need React on every page.
Your team controls content; we handle the engineering.
Pre-rendered HTML served from a global CDN. First byte under 100 ms anywhere your customers live. Netlify, Cloudflare Pages, or Vercel — we choose with you.
Static-site generation by default. Islands of React, Vue, or Svelte only on interactive components. Optimized images at build time (AVIF + WebP, explicit dimensions, lazy below the fold).
Structured content your team edits from any browser. Real-time collaboration, image pipeline, GROQ querying, generous free tier. We propose Sanity by default — we'll evaluate Storyblok, Payload, Contentful, Hygraph, or Decap if your situation calls for it.
Your content lives in your CMS, your repo, your accounts. HubSpot, Salesforce, Marketo, Segment, GA4 — wired in as first-class citizens, not third-party scripts that tank performance.
AI Overviews, Perplexity, ChatGPT Search, and Gemini don't read your site the way Google did in 2015. We build for the way they read it in 2026.
Real <article>, <section>, <nav>, <main>, <header>, <footer>. LLMs and crawlers parse structure before content.
One H1 per page. H2s framed as questions where it reads naturally — directly extractable into AI Overview answers.
Organization, WebSite, BreadcrumbList, Service, FAQPage, Article, LocalBusiness — chosen per page type, validated against Google's Rich Results test.
Explicit manifests telling Claude, GPT, Gemini, and Perplexity what your site is about and which content is canonical.
GPTBot, ClaudeBot, PerplexityBot, Google-Extended — allowed by default, with per-path control when you need it.
Short lead paragraphs that summarize. Definition boxes. FAQ blocks. Tables where comparisons live. Exactly what LLMs reach for first.
Hand-tuned share images, not auto-generated. Strong social referrals lift AI training signal too.
One canonical per page, no conflicting signals. Paginated archives use rel=next/prev where appropriate.
If your site doesn't hit these numbers at launch, it's not done. Measured on a cold cache, slow 4G simulation, mobile-first.
Want these numbers on your own site?
Get a Build EstimateMeasured from your actual session on this page, right now. Values update live as the browser reports them. Compare to the contract we sign with every build.
Values are from your current page session in this browser, on whatever network you're on. Numbers are typically better on a warm cache and worse on first paint — that's why we commit to first-paint numbers (cold cache, slow 4G simulation) in our contracts.
Concrete scope, not a checklist of vague deliverables.
Repeatable, documented, measurable. Click any phase to see deliverables, who's involved, and what changes after it launches.
Diagnostic before any decision. We start by understanding what you actually have.
We don't recommend a single architectural choice until we've audited your current site, your brand, your content, and your conversion goals. Half the engagements end up with a different scope than the kickoff implied.
Our owner (yours through delivery), brand lead, and one engineer for the technical audit.
Most builds land in one of three tiers. Page count, content migration, integrations and custom interactivity move a project between them. Every number is confirmed after discovery, and the final figure is sometimes lower.
Up to about 10 pages, your brand applied to our templates, standard contact form and tracking.
Custom design across key templates, blog or resources section, CMS training, SEO migration.
Many pages or locations, e-commerce, heavy interactivity, integrations or custom features.
Setup and onboarding fees, ad spend and custom scopes are extra. Get an instant range from the pricing calculator, or request a scoped estimate.
Get a Build EstimatePractice-area pages that rank, intake forms that convert, and a site the marketing team can update.
See how we work with law firmsProduct pages structured for comparison searches and AI answers, with a CMS built for frequent releases.
See how we work with b2b saasFast, accessible, compliant pages with schema that search engines trust.
See how we work with financial servicesProgram pages at scale, multi-campus content models, and accessibility as the floor.
See how we work with higher educationOne codebase, many locations, each with its own local pages and schema.
See how we work with franchisesJob and location pages that load fast on a phone in the field.
See how we work with construction staffingIt hits every commitment on this page. View source, run it through Lighthouse yourself — there's nothing hidden.
The site you're reading. Astro, headless content, Lighthouse 95+ on cold cache, sub-second LCP. View the source — there are no surprises.
See the live PageSpeed scoreMost builds land in one of three tiers: around $3,000 for a basic site, around $5,000 for a mid-size site, and $7,000 to $10,000 for larger sites or builds with e-commerce, heavy interactivity or custom integrations. Page count, content migration and the number of custom templates are what move a project between tiers. The pricing calculator gives an instant range, and we confirm the number after discovery.
They're fine for a hobby site. For a business that depends on search visibility and conversion, they hit walls fast: no real schema control, no AI-crawler manifest, locked-in templates, mediocre Core Web Vitals, and your content lives in their database, not yours. The price difference vanishes the first time you need to do something they don't support.
Yes, and the difference is structural. Astro ships finished HTML and loads JavaScript only where a component needs it. WordPress renders pages in PHP on each request, and page builders add megabytes of scripts and styles on top. Caching plugins narrow the gap on repeat visits but not on first loads, which is what Core Web Vitals measure. Our builds target LCP under one second and a median page under 200 KB.
Yes. We build a per-URL redirect map during the information architecture phase, test it before and after launch with a script that fails on any 404 or non-301, preserve or improve every page's schema, and resubmit the sitemap to Google and Bing on cutover day. Skipping that work is where most redesign ranking losses come from.
You do. Repository hosted in your GitHub or GitLab organization from day one. We hand over the keys at launch. No platform lock-in, no proprietary "agency CMS" you can't move off of.
By default, Sanity Studio, a real-time, collaborative content editor your team can run from a browser. It's the strongest fit for structured content, image handling, and Astro integration we've found. We'll evaluate alternatives (Storyblok, Payload, Contentful, Hygraph, Decap) if your situation calls for something else, and document the decision.
Yes. Content lives in Sanity Studio, a browser-based editor with real-time collaboration, image handling and preview. Your team edits pages, posts, FAQs and metadata. A developer is needed only for new page types or components, and we document the content model at handover.
Usually not. Astro renders static HTML and lets us add React, Vue or Svelte only to the components that need interactivity, such as a calculator or a filterable directory. The rest of the page ships with no framework JavaScript at all.
This is most of why people come to us right now. We publish llms.txt and llms-full.txt manifests, allow legitimate AI crawlers (GPTBot, ClaudeBot, PerplexityBot, Google-Extended) by default, structure content for extractive answers, and use schema that LLMs treat as canonical. You won't just rank. You'll be the source they cite.
A tight-scope marketing site can launch in as little as 30 days; a full marketing-site build typically runs 6 to 11 weeks end to end. An enterprise build with content migration, multi-language, or e-commerce can be 4 to 6 months. We give you a real timeline after the discovery phase, never before.
Thirty days of optimization are included. We watch real-user Core Web Vitals, fix the slowest 10% of pages, compare conversion rates with your old site, and meet weekly. After that you can continue as an ongoing partner or take the keys.
Most builds land between $3,000 and $10,000 depending on size and features. Answer three quick questions and see where yours lands.
Thirty minutes on a call. We'll scope the project, give you a real number, and you'll know what we'd do differently than your current stack — whether you hire us or not.