Pest Control Website Template
Demo brand: THRESHLINE PEST DEFENCE · Pest control / extermination · 21 routes · Astro 7 + Tailwind 4
Live preview
The demo is a full desktop site. Open it in a new tab ↗
About this pest control website template
A complete website for a pest control company that works for homes and businesses: a hero where visitors pick the pest they are seeing, a pest identifier with live prices, six pest pages, business contracts, a full price list, pest guides, an FAQ and an inspection booking form. Twenty-one built pages, all driven by content files.
It looks like a firm you would let into your home. White pages with warm stone blocks and one near-black band, real photography of treatments, nests and entry points carrying the colour, square corners throughout, and one rust accent on prices and buttons. Sofia Sans for headings, Source Sans 3 for everything else.
Every section answers what someone with mice in the loft wants to know before they call: what is it, how is it treated, how many visits, what does it cost for my property, and can you come today. The identifier gives all of that and carries the answer into the booking form. Motion is one quiet reveal.
The 21 pages you get
- Home
/ - Headline with a book/call pair and a trust line, six "what are you seeing?" pest tiles, promises, the pest grid, the survey story, the process, the pest identifier with live prices, one-off vs annual contract, the business band, reviews, guides, FAQ by pest and a booking band.
- Pests we treat
/pests/ - Every pest as a card with a treatment photo, price from, number of visits and whether a same-day visit is possible.
- Pest pages
/pests/…/ - Six pests: rats and mice, wasps, bed bugs, moths, cockroaches, pigeons and gulls. Signs to look for, treatment steps, a fixed-price card for house, flat and business, questions, related guides and a booking link for each property type.
- Business contracts
/commercial/ - Three contract tiers with monthly prices, what every contract includes, the sectors served and the one-off vs contract comparison.
- Prices
/pricing/ - A price table for every pest by property type, what the price includes, what costs extra, the comparison and the 90-day guarantee explained.
- About
/about/ - The firm in numbers, how a job is run, four rules kept on every job, the service area and a placeholder line for registrations and insurance.
- Pest guides
/guides/ - A list of guides, each showing how many signs to look for. Add a Markdown file and it appears here.
- Guides
/guides/…/ - Four written guides: rat or mouse droppings, wasp nests in the eaves, bed bugs after a trip, cockroaches in a flat. Each opens with a signs checklist and ends with the matching price.
- FAQ
/faq/ - Always-open answers in two columns, grouped by pest, plus safety, payment and the guarantee.
- Book an inspection
/contact/ - Office and 24-hour phone lines, hours, and a form whose pest, property and time slot are pre-filled from any "Book" link.
- Privacy and terms
/legal/…/ - Two starter legal pages on a shared layout, with terms covering prices, the guarantee and cancellations.
- 404
/404 - Designed, with links back to the pests and the phone number.
What is in the build
- A pest identifier: pick a pest and a house, flat or business to see the signs, treatment, visits, price from and the earliest slot, then book with everything pre-filled
- Hero pest tiles that jump straight to the identifier with that pest selected
- Pests as content: prices per property type, visits, same-day flag, signs, treatment and questions in one Markdown file per pest
- A one-off treatment vs annual contract comparison that stacks cleanly on phones
- Reviews tagged with pest, property type and number of visits
- A 24-hour emergency line in the footer and every business fact in one file
- Real treatment and pest photography, optimised by Astro, with one accent colour that rebrands the whole site
- Vitest and Playwright suites included
The design decision
Every template in this catalog is loud in exactly one channel and deliberately quiet in the other three. That single rule is what stops 65 different worlds reading as one design system in different paint.
- The world
- White pages with warm stone blocks and one near-black band, Sofia Sans over Source Sans 3, real photos of treatments, nests and entry points, and one rust accent on prices and buttons.
- The mechanic
- Visitors pick a pest in the hero or the identifier, choose house, flat or business and see the signs, treatment, number of visits, price from and earliest slot; the inspection button pre-fills the contact form with pest, property and slot. Motion is one quiet reveal.
- Loud channel
- Imagery
- Imagery. Suited technicians, wasp nests, entry points, pests
- Type & palette
- Sofia Sans · Source Sans 3
-
#ffffff#1a1917#9a3412
Who it is for
Built for pest control companies and sole-trader technicians covering homes and businesses, and a good fit for related trades that price by job type, such as drain clearance, gutter cleaning or bird proofing. It suits a firm that wants the phone to ring and the booking form to arrive already filled in.
Under the hood
- Astro 7 · static output, zero client framework
- Tailwind 4 · one @theme block holds the palette
- MDX content collections for the blog
- GSAP + Lenis for the scroll work, reduced-motion aware
- Self-hosted woff2 — no Google Fonts request
- Sitemap, canonicals and per-route meta wired
- Vitest + Playwright suites in the repository
- Zero third-party requests · strict CSP-ready
How to get started
- 01 Accept the repository invite and clone it.
- 02 Run
npm install, thennpm run dev. - 03 Replace the content in
src/data/with your own — that is where the brand, the copy and every list live. - 04 Swap the images in
public/images/and the palette in the@themeblock. - 05 Run
npm run buildand deploydist/anywhere static.
Questions
How do I change the prices?
Each pest has one Markdown file with a price for a house, a flat and a business. The home tiles, the identifier, the pest cards, the price table and the pest pages all read from it.
Where do bookings go?
The form posts nowhere by default. Point it at your form backend or booking system; the README shows how. The pest, property and time slot arrive pre-selected from whichever button the visitor pressed.
What about my trade body and insurance?
The site carries clear placeholder lines for membership, certification, insurance and company number in one file. Fill them in with your own details; no real registration is printed.
Can I use the photographs?
Yes. They are from Pexels, which allows commercial use, and each one is listed with its source in LICENSING.md. No faces are identifiable and no product labels are shown.
What exactly do I get for free?
Access to a private GitHub repository holding the complete Astro source of this template — every route you see in the preview, the content model, the images and the tests. Updates arrive in that same repository.
How many sites can I build with one licence?
As many as you like, for yourself or for clients. The licence is per buyer, not per project. The one thing you may not do is resell or redistribute the source as a template, theme or starter kit.
Do I need to know Astro?
It helps, but the common case is editing content and colour. Content lives in typed objects under src/data, colour lives in one @theme block, and npm run dev shows the result. Deploying is a static folder — Cloudflare Pages, Netlify and Vercel all take it as-is.
Is anything loaded from a third party?
No. Fonts are self-hosted woff2, there is no analytics, no tag manager, no CDN script and no external CSS. The build ships static HTML under a strict Content-Security-Policy.
More trades & industry templates
KELMER OVERHEAD DOOR
Garage door repair
Loud
Imagery
TORWICK LOCK & SAFE
Locksmith / master keying
Loud
Imagery
KANWICK STEELWORKS
Steel fabrication
Loud
Imagery
Crowder Plumbing & Drainage
Plumbing & drainage
Loud
Imagery
BRISKWELL CLEANING CO.
Contract cleaning
Loud
Imagery