Sanity CMS consultancy

A job title appears incorrectly on three pages because it was entered three times. Editors avoid a field that no longer helps them. A listing loads slowly because its query fetches whole documents to show four lines. I trace these issues through the content model, Studio and frontend.

Send the schema, Studio setup, slow query, migration or proposal. I write down what to change and in what order.

100 USDexcl. VAT

per hour, 300 USD minimum

  • A content-model review before it locks in, or a restructuring plan for one that outgrew itself.
  • A Studio, GROQ and frontend-integration review for your Next.js or Astro site.
  • A migration plan, or a second opinion on a codebase or a proposal.
Sanity Studio's page-sections editor for an ECCA page, showing reusable content blocks - an images grid, a CTA, and a two-column section - each flagged where a change affects every page reusing it.

ECCA stores each speaker once

On the ECCA conference platform, sessions reference speaker documents. ECCA corrects a speaker's details once, even when that person appears in three sessions. The screenshot also shows reusable page sections. I check which content needs a reference and which belongs on one page.

Sanity Studio's Visual Editing view for the ECCA conference gallery page, showing the live page preview next to the editable description and image-list fields that produce it.

Where an integration review looks

Visual Editing shows the gallery page beside its editable fields. I check the GROQ query, template data, preview, caching and generated types to make sure changes appear correctly.

A query review returns the projection each template needs

Before: whole documents, to render four lines

*[_type == "session"] {
  ...,
  speaker->
}

// Every field of every session, plus the entire
// speaker document behind each one, sent over the
// wire so a card can show a title and a time.

After: the fields the card renders

*[_type == "session"] | order(startsAt asc) {
  title,
  startsAt,
  "speakerName": speaker->name,
  "speakerRole": speaker->role
}

// The projection matches the template. When the
// template changes, generated types fail the
// build before an empty card can ship.

FAQ

Scope and limits

What does this cover?

Content Lake and the content model: document types, references, reusable sections, localisation, multisite and multi-brand ownership. Studio: desk structure, previews, validation and roles. The frontend: GROQ shape, caching, preview, generated types and integrations on Next.js or Astro, including Vercel architecture. I also review migrations, codebases and proposals before you commit.

Ask the agent this question
Is this a review, or do you make the changes?

I send written recommendations for your team to implement. If you want me to implement them in your repository and dataset, I write the changes up as a roadmap of tasks, each estimated in hours, and carry them out as you approve them, at 75 USD an hour excl. VAT.

Ask the agent this question
How is the time scoped?

I take a first look, then reply with a fixed number of hours at 100 USD an hour excl. VAT, with a 300 USD minimum. A single schema or query question is usually a few hours, a content-model design or a migration plan a day or two. Nothing starts before you agree the hours.

Ask the agent this question

Something else on your mind? The chatbot answers questions about my work from this site. Ask in English, Polish or your own language.

Ask the agent

In practice

How a Sanity review runs

  1. Send the project and the question

    Read access to the Studio and frontend repositories, and a sentence on what is at stake.

  2. I read the project first

    The document types, desk structure, queries and frontend wiring your question touches, then a fixed number of hours at 100 USD an hour excl. VAT, with a 300 USD minimum.

  3. You get a recommendation with the trade-offs

    What to change in Content Lake, Studio, the frontend or its integrations, which decisions need approval, and the order to implement them.

Sanity CMS consultancy

100 USDexcl. VAT

per hour, 300 USD minimum

  • A target architecture across Content Lake, Studio, Next.js, Vercel and external integrations.
  • A documented choice for the document and object types, with decision gates before implementation starts.
  • A content-model review, or a restructuring plan for one that outgrew itself.
  • A Studio review: desk structure, previews, validation, roles.
  • A GROQ and frontend-integration review for your Next.js or Astro site.
  • A migration or import plan, in the order that loses nothing published.
  • A second opinion on a Sanity codebase or a proposal before you commit to it.

Get in touch

Send the question

Send read access to the Studio and the frontend repository, plus a sentence on what is at stake - the schema about to lock in, the editors working around a field, or the query nobody wants to touch.

Working with an AI agent?

Copy this prompt into Claude, ChatGPT or another agent. It helps you write the brief and gives you a snippet. Paste the snippet anywhere on this page and the form fills itself in.

I reply within one business day.

Augustyn's chatbot

Ask me about my services, projects or how I work.

For questions about my work, this assistant uses the site and its FAQs. Its answers may be limited. AI can be wrong. Avoid personal details. Privacy