Skip to content
Nametech Canada

Nik's Auto Repair

Nik's Auto Repair home page on desktop and phone, captured October 12, 2026, with the 60 second quote card in view

Project Overview

Nik's Auto Repair Ltd. is an independent auto repair shop in Port Coquitlam, BC. German and European vehicles are its specialty (Audi, BMW, Mercedes-Benz, Volkswagen and Porsche), alongside diagnostics, brakes, pre-purchase inspections and fleet service for drivers and businesses across the Tri-Cities.

Project Summary

We designed and built a custom website for the shop on Next.js, moved it off Wix with every old address kept, and built five Google Ads landing pages on the same platform. We also manage the shop's Google Ads. The site launched on October 11, 2026 with a 60 second quote card, eight service pages, the shop's Google reviews, a gallery of real jobs and 112 migrated blog posts.

About Nik's Auto Repair

Nik's Auto Repair is an independent shop in Port Coquitlam, at Unit 121, 1772 Broadway St since August 2026. German and European cars are the specialty, and the shop also takes diagnostics, brakes and suspension, pre-purchase inspections, tires, maintenance, breakdowns, and fleet and diesel work.

Its own site puts the shop in numbers: 4.6 out of 5 on Google from 77 reviews, 8+ years in the trade, 3 technicians, open six days a week from 8 am to 10 pm with Sunday by appointment, and a phone that is answered at any hour.

The promise that runs through every page is the headline of its About page: We show you the problem before we quote the fix. A customer gets a written estimate with photos, and nothing is touched until they say yes by text.

What they needed

The shop was leaving Wix, and it was leaving with something to protect: 112 published blog posts, each at an address that search engines and other sites already knew. A new site that dropped those addresses would have given that up on launch day.

It also advertises on Google, and an ad for brake repair should open a page about brakes. So the job was two things at once: a full website that turns a visitor into a quote request, and a set of pages built only for people who arrive from an ad.

And because the shop's pitch is honesty about price, the site could not be allowed to show a price or a promise that had not been confirmed.

What we built, and why

Home opens with a quote card headed Get a quote in 60 seconds. A visitor taps one of eight symptoms, from Warning light on to Buying a used car, and the request is on its way in three taps. It sits above everything else so that someone who knows the symptom but not the name of the repair can still ask.

Each of the eight services has its own page on one pattern: what is included, common prices, a card to book that service and recent jobs from the bay. The Book page asks for six things, the VIN among them as an optional field, so the exact parts can be pulled before the car arrives. It is a request form and behaves like one: it never says Booked and never shows a time slot that does not exist.

Recent work holds twelve of the shop's own photos, filtered by service, and two pairs a visitor can drag to compare a part out of the car and back in. Each caption describes only what its photo shows.

Reviews are read from the shop's Google listing, all 77 of them. The site shows 64 word for word and says so on the page, each card carries a Verified mark, and the rating and the count come from one file, so the home page, the review pages and the data search engines read can never disagree.

Nothing unconfirmed reaches the live site

Every price, policy and claim in the site's content carries a flag that says whether it has been confirmed. On the live site an unconfirmed price reads Ask for a quote, and an unconfirmed claim is not shown at all. The same rule keeps unconfirmed prices out of the data search engines read.

Some promises are woven into sentences and cannot be hidden one line at a time. For those, a live build refuses to start until each one is confirmed. We wrote this as code and not as a checklist because a person checking by eye will miss one.

A private page lets the owner approve each price, hour and promise from his phone with Confirm, Change or Remove. An approval is tied to the exact wording he read, so if the wording changes later, the item goes back to unconfirmed.

Leaving Wix without losing an address

All 112 blog posts moved to the new site word for word, with their original publish dates and their 112 cover images. We left the text alone on purpose: it was published, ranked content, and changing ranked text on the day of a move puts the ranking at risk.

We listed 132 addresses the old site answered, from posts and pages to its old sitemap files, and each one lands on a working page of the new site through a permanent redirect. After the switch on October 11, 2026, all 132 were asked of the live domain and none went astray. The blog's feed is still served at its old address, so anyone following the shop in a feed reader keeps getting posts.

Google Ads: a page for each search, and every lead counted once

We manage the shop's Google Ads in the shop's own account, which stays in its name, with Google billing the ad spend to the shop directly. We built five landing pages, one for each service it advertises: German and European repair, check engine diagnostics, brake repair, pre-purchase inspection, and fleet and diesel repair.

An ad page has one job, so it has no site menu to wander off into. Each carries a Call button, a Text button, a short quote form with symptoms to tap, a customer's Google review and the questions people ask before booking. The pages are kept out of search results, because they repeat the service pages and exist to be measured as paid traffic.

A lead is counted only after the server has accepted a real request, and a phone call counts only when it lasts a minute or longer. The ad pages and the main site share one conversion tag, and every quote request records the page and the ad group that brought it.

In the account we added 84 negative keywords in five groups, built from its own search terms. Ads show to people who are in the four cities the shop serves, not to people elsewhere searching about them. Google's automatic recommendations stay switched off, and every change is written in a log with its reason, how to undo it and the date it may be judged.

How it is built

The site is one custom application on Next.js and React, hosted on Vercel, with a Postgres database on Supabase in Canada. Requests sent through the forms are stored in Canada, which is what the shop's privacy page tells its customers.

Every page is served with a Content Security Policy that carries a fresh nonce for each request, and browsers are told to use HTTPS only for two years. The one outside script is the Google Ads tag. Fonts are hosted by the site itself, and so are the reviewers' profile photos, so a visitor's browser is never sent to Google for either.

Every form posts to one endpoint. Each alert to the shop is written to a log before it is sent, one email per inbox, so a send is proven by its row and a failure cannot pass silently. A visitor's IP address is never stored raw.

For search engines, Home is marked up as an auto repair business with its address, hours and rating, each service page describes its service and the four cities it serves, and every post is marked up as an article.

Where it stands today

The site has been live at niksautorepair.ca since October 11, 2026. Its sitemap lists 129 addresses: 9 pages, 8 services and 112 posts. The five ad pages run at go.niksautorepair.ca.

Five more shop facts were confirmed the day after launch, and each now shows on the pages meant to carry it. Prices still waiting on confirmation read Ask for a quote, which is the gate doing its job.