The client
Roseville Landscape Material Supply sells rock, bark, mulch, sand and soil from a yard in Roseville, California, and delivers across Placer and Sacramento counties. The business was founded in June 2020. We started working on its website in October 2021 and have worked on it ever since: on WordPress until July 2024, on Astro from then on.
The original challenge
Most calls to a materials yard ask the same few things. How much do I need? Can you deliver to me? What does it weigh? The website’s job is to answer those before anyone picks up the phone, in English or in Spanish.
The site we inherited ran on WordPress and a page builder. Its products were listed together on one page, and Spanish came through a machine-translation plugin.
Building the foundation
We began, in October 2021, by rebuilding and optimizing the site within WordPress. We made it faster and rebuilt its product catalog, with a dedicated page for each product and each category, so customers could browse the materials and find what they needed. It has always been a catalog, never an online store. By March 2022 the Internet Archive holds the rebuilt site, and over 2022 and 2023 it recorded 94 separate product pages.
We kept developing the WordPress site for almost three years. Our credit first appears in its footer in May 2023, and a redesign at the end of 2023 carried it too. The site carries it today.
Moving beyond WordPress
We completed the first Astro migration on Saturday, 6 July 2024. The aim was a faster, cleaner site that would be easier to maintain and to build on. By 26 July the Internet Archive shows the Astro site served by Netlify. Astro builds every page ahead of time, so a visitor is sent finished files from Netlify’s network, with no database query or plugin stack behind each request. The tools run in the visitor’s browser. Changes are made in code and published as a new build, so there is no plugin or theme layer to keep patched on the live site.
The archive shows the size of the change on the homepage. The last WordPress version it holds, from 14 June 2024, named 58 script files and 80 stylesheets for the browser to fetch. The first Astro version, from 26 July 2024, named 2 and 3. That is a count of files, not a speed measurement.
The catalog moved out of WordPress into the site’s own product files, with a page for each product and each category. The material guides came across as articles, and the calculator the yard had offered since before our time was carried over. Spanish moved from the translation plugin to pages marked by language, and by September 2024 the Spanish pages had their own /es/ addresses.
Continuous improvement
Since July 2024 the site has grown in steps, each one dated in the archive or in the project’s repository.
A full Spanish edition. Spanish pages have their own addresses, their own text and their own structured data. Today the site has 256 pages in each language.
Location pages. City pages first appear in the archive in March 2025. There are 33 in each language. Since June 2026 they, the delivery page and the tools all read their delivery bands from one rate file, so when the yard changes a rate, it changes everywhere at once. In November 2026 each city page was given its own delivery zone.
Tools that answer the question. The calculator works from a shape (rectangle, triangle or circle) and its dimensions. It returns cubic yards, square feet, a 10% allowance and an estimated weight. The Material Estimator, in the archive from July 2025, adds the material group, with a weight per yard for each, converts between yards and bags, and produces a quote. That quote can be printed, saved as a PDF, copied, or carried straight into the Order Builder, which prepares a request, not a purchase. It turns a whole job into a materials list, drawn from 99 of the catalog’s products, with pickup or delivery, a preferred day and time window, notes for the driver and the yard’s bagged-material policy, and sends that list to the yard as a request. It takes no payment and completes no sale; the customer can download a copy of what they sent.
Content. In June 2026 the site gained a 31-term glossary in each language, eight more guides and category FAQs. In October 2026 it gained an interactive Soil Selection Guide that starts from the job, with a one-page printable field guide in both languages.
Prices the way the yard sells. In October 2026 the office reported a customer asking for boulders by the bag. Boulders and moss rock now show a price per pound and are kept out of the bag and cubic-yard quantities in the tools.
The platform. The site moved to Astro 6 in June 2026. In October 2026 an audit of the built site improved its structured data, language tags and image delivery, and the review badge was tied to the public Google and Yelp listings, with the date they were read. Seasonal decorations arrived at the end of October 2026, with a switch that lets a visitor turn them off.
The current experience
As of 8 November 2026 the site has 512 pages, 256 in each language:
- A catalog of 121 products, filterable by category, size and color, with six ways to sort and site search.
- The calculator, the Material Estimator and the Order Builder, which help customers work out and request what they need.
- No online checkout or payment: the site is a catalog, and its tools prepare requests for the yard.
- 33 location pages, 29 guides, a 31-term glossary and an FAQ in each language.
- The Soil Selection Guide and the printable soil field guide.
- Structured data on every page: business, catalog, products, FAQs, breadcrumbs, articles and the glossary.
The screens below are our own captures of the live site, followed by the Semrush record behind the map figures.
Results
- Map ranking: Semrush’s tracker recorded first place at all 25 checkpoints of a grid around the yard, every week from February to June 2026. That is a record of that period, not a live ranking.
- Search Console: the export from 22 July to 12 October 2026 shows 490,594 impressions, with indexed pages rising from 487 to 505. It has no clicks or queries.
- Lighthouse, 8 November 2026: three mobile runs per page with Lighthouse 13.6 and its simulated throttling, medians reported. The homepage scored 100 for performance, the Spanish homepage and a product page 99, and all three scored 100 for accessibility, best practices and SEO, with the main content in place in 1.7 seconds. These are lab measurements, not data from real visitors.
- Site quality, measured on our own builds:
- June 2026: broken internal links fell from 119 to 0 across 516 pages, and duplicate title groups from 156 to 4.
- October 2026: structured-data errors fell from 5,263 to 0. On a product page, the main content appeared in 1.5 seconds instead of 7.8 under throttled lab conditions.
The site has carried no analytics since 25 October 2026, so how often the tools are used cannot be measured. Calls and orders are not ours to count. We don’t claim the site caused the ranking. What we can show is the work, and the dated records beside it.
The partnership
Working on one site since 2021 means each change builds on the last, made by people who know why the last one was made. The yard’s office tells us what customers ask, and the site changes to answer it: the bagged-material policy shown before a customer sends a request, boulders priced by the pound, a delivery zone on every city page. The work continues.








