casesvn-neva-beauty

rudiscuss your taskmenuclose

Beauty center with device-based aesthetic treatments, Da Nang · 

A website that made it easier for people to send a message

There were 8 messenger clicks in 37 days. Then there were 46. Here is what had to change to get there, and why it turned out not to be about the design.

46 Messenger clicks visits where WhatsApp or Telegram was clicked

was 8

8.8% Share of visits with a click the share of visits that led to a message

was 2.5%

256 Visits from search search became the top channel

was 30

Home page of the new website

The business

Neva Beauty is a beauty center with device-based aesthetic treatments in Da Nang. Laser hair removal, SMAS lifting, Morpheus 8, photorejuvenation, LPG massage, facial care. Its customers are Russian speakers who live in Vietnam or have come for a long stay. Visits are by appointment, and people get in touch on WhatsApp, Telegram, and Instagram.

The situation is typical for a salon abroad: people search for “laser hair removal Da Nang” or “SMAS lifting Vietnam” and find anyone but you.

What it delivered

The center began showing up in search, and visitors began getting as far as a message: over the same length of time, there were several times as many messenger clicks. The numbers, periods, and source are in the “Results” section. On top of that, a price is edited in one line, and the site itself keeps it from differing from page to page.

Where I started

The center had a site on a website builder. It looked decent and did exactly what most such sites do: it simply existed.

There is no way to show it in pictures: no copy of the old site survives, either with the owner or in the web archive. So what follows is numbers from analytics and screenshots of the new site only.

Where visitors to the old site came from, April to early May: main sources
SourceVisits
Social media147
Direct visits109
Search30
Links from other sites7

Of all the traffic, 9% came from search. In other words, the site only brought in people who already knew about the center: Instagram followers, people from the Telegram channel, acquaintances who came on a recommendation. Everyone who searched for a treatment in Da Nang without knowing the brand passed it by.

And the second half of the problem, the less obvious one: of those who did visit, only a handful made it to a messenger. In those 37 days, there were eight visits in which someone clicked WhatsApp or Telegram. That is 2.5% of everyone who was on the site.

One page for everything

Someone searches for “Morpheus 8 Da Nang” while the site mentions this treatment as a single line in a general list. A search engine has nothing to show in answer to a specific search, because there is no page for that search. And the person who does get there has to scan for their treatment and its price among ten or so others.

Search engines did not understand that this was a salon

No structured data that tells a search engine this is a salon and what its services and prices are, and no question-and-answer blocks. To a robot, it was just a pile of text, not “a beauty center in Da Nang with these services and these prices.”

Slow on a phone

Website builders drag along third-party code that a particular site does not need. The salon’s customers view the site on a phone, often on mobile data, and every extra second of loading is a person who left.

What I did

I split the services into separate pages

Four areas: body contouring, lifting and rejuvenation, laser treatments, and skin care and aesthetic treatments. Inside them are ten services, each with its own page that has a description, the prices for that service specifically, and answers to common questions. Now the search “SMAS lifting Da Nang” has exactly the page the person was looking for.

Four areas on the home page: a person sees their topic right away

I put a “message” button on every page

Instead of one shared form at the bottom of the site, there is a booking block on every service page, with its own heading: a person reading about laser hair removal messages right from there, without hunting around the site for contact details. I removed the phone number from the contact bar entirely and kept the messengers: the salon’s customers message rather than call anyway.

The booking block repeats on every service page, with its own heading

I explained to search engines and AI assistants what kind of business this is

Every page carries structured data that tells robots outright: this is a beauty center, it is in Da Nang, here are its services, here are the prices in dong, here are the answers to customers’ questions. This is what Google and Yandex, a search engine used in Russia, go by to understand what kind of business this is. As a side benefit, the site is readable by AI assistants, which also get asked “where to go for hair removal in Da Nang.”

I cut what wasn’t needed and sped the site up

The site is built ahead of time into finished pages: no database, no engine that computes something at the moment a page opens. The browser gets a finished file. The site now opens almost instantly, even on a phone with a weak connection: by Google’s measurement, speed went up from 75 to 98 out of 100.

I protected the prices from errors

The prices live in one file. Before every publication, an automatic check compares every number on the site with that file, and if even one price differs, the site simply is not published. For a salon this is no small thing: a wrong price means either lost money or an unpleasant conversation with a customer at the front desk.

I made the second salon a twin

The brand has a second location, on Koh Samui in Thailand. Both sites are built the same way and switch to each other: a person who lands in the wrong country from search goes to the right site instead of closing the tab.

Results

A comparison of two periods of equal length: April 1 to May 7 on the old site and August 1 to September 6, 2026, on the new one. 37 days each.

Inquiries
MetricOld siteNew siteChange
Visits with a messenger click846×5.75
Share of visits with a click2.5%8.8%×3.5
Total clicks to WhatsApp and Telegram1354×4.2

There are 5.75 times as many messenger clicks, and the share grew 3.5 times. The second matters more than the first: the site did not just bring in more people; it became three times better at turning a visitor into someone who messages. That is the difference between a pretty brochure website and a working tool.

Where people came from
MetricOld siteNew siteChange
Visits from search30256×8.5
Search share of traffic9%49%+40 points
Total visits322520×1.6
Page views6031,187×2.0
Pages per visit1.872.28×1.2
Time on site1:231:36+13 sec

Search traffic grew 8.5 times, and search became the top channel: it used to bring one visitor in eleven, and now it brings one in two.

Where the numbers come from: Yandex Metrica, a web analytics service, on the center’s website. Clicks are counted by the “messenger click” goal: it picks up clicks on every WhatsApp and Telegram link and was running in both periods, so the comparison is valid. Yandex Metrica does not know how many of these people went on to book and pay, and that is not in this case study.

One important caveat, and the numbers should not be read without it: in the new period, ads were running alongside. They brought 86 visits, a third of what search brought and 16% of all traffic. Ads do not explain this growth: take them out entirely, and unpaid traffic still grew from 322 to 434.

Two metrics changed for the worse

17% → 25%

Bounce rate

The makeup of the audience changed: before, almost everyone came from social media already knowing the center; now half the traffic is strangers from search, and some of them predictably leave after looking at the prices. With messenger clicks up 5.75 times, that is a fair price to pay.

8.4% → 5.0%

Clicks to social media

Before, the site worked as a shop window that people left to go and message on Instagram; now they go straight to a messenger. The inquiry did not disappear: it moved to a shorter channel.

I’ll look at your website and tell you what is in the way

Message me

What this gives the business going forward

Can I change a price myself?

Yes, and with no risk of getting it wrong. One line is edited, and the site rebuilds itself and checks itself. You need neither a developer nor a login to the website builder’s admin panel.

Won’t it fall apart in a year?

There is nothing to update, so there is nothing to break. The finished pages will still open five years from now, exactly as they are today. The only thing that ages over time is the build tool that applies your edits: someday it will have to be updated, but that does not affect how the site works.

What if a new service is added?

Two lines in one file: the service itself and its place in a section. The page, the menu item, the path through the sections, and the search markup appear by themselves. All that is left is to add the prices and a photo.

How it works technically

A custom static site generator in Python: content in YAML and JSON, Jinja2 templates, clean HTML as output. Schema.org markup as one connected graph (Organization, BeautySalon, Service, FAQPage, OfferCatalog with a price for every item), sitemap.xml, llms.txt. Self-hosted fonts as variable subsets, CSS as one minified bundle, responsive images. The build, four automated tests, and publishing run in GitHub Actions; hosting is GitHub Pages on a custom domain.

Who did the work

It’s just me behind jw-dev.pro, not a studio or an agency. That means you talk directly to the person doing the work: no manager, no brief relayed through third parties, and no passing the project to another contractor partway through.

My time zone is UTC+7, the same as Bangkok and Hanoi. I build websites, Telegram bots, and automation: a task rarely ends with a page, and it usually has to be connected to what you already have running.

As time goes on, the task sounds like “build a website” less and less often. One person needs a price to be changed in one place, not on twenty pages. Another needs the channel to run without them. A third needs the whole price list to sit inside Telegram, where their customers already go every day. That’s why the list of what I do is open-ended: if your task isn’t on it, that doesn’t necessarily mean it can’t be solved.

I write case studies so that they can be checked: what was there, what was done, and how it was measured. If there is analytics data, I give the numbers and the period they cover; if it is too early to measure, I say so. You won’t find “increased sales” here: that is a promise, not a result.

Need something similar?

Whether it’s a website, a bot, or something that is now done by hand, tell me what’s going on, and I’ll tell you whether it can be solved or not.

This kind of work is the service “Small business website: a full build, ready to run.”

I have your request

I’ll read it myself and reply where you told me to.

Send another one

What you need you can pick several

In your own words: what you have now and what you want to get. If you have a website or a bot, paste the link.

Your request will come to me on Telegram, and I’ll reply myself.

If it’s easier, contact me directly: on Telegram, on WhatsApp, or by email.

Not sure what’s wrong with your website? Check it for free on Telegram: @jw_site_check_bot.

Who owns everything afterward and what happens if I disappear: answers on the home page.