Grow your furniture & home goods store [examples + results]
Read summarized version with
This guide covers eight campaigns that furniture and home goods stores run on their own site, what each one is for, and how to set it up. Every example ran on a live store.
The campaigns are ordered by where they sit in a visit, from the first page through to the cart, so you can start with whichever gap is costing you most.
What you will find:
See your segments
Turn more of your traffic into customers
We review your traffic and show which behavioral segments you have, the campaigns that fit each one, and the revenue they could reach.
:quality(80))
of online revenue attributed to onsite campaigns
Vepsäläinen runs the onsite feed, popups, embeds and bars across a high-end furniture catalog.
Collect the email while the visitor is comparing
Emma Sleep runs two capture campaigns in parallel on every market: a landing popup for new visitors, and an exit popup for visitors about to leave. The formats differ because the two moments differ.
The landing popup opens with a question instead of a form. Tell us what you need for perfect sleep, with Mattresses, Pillows, Beds and Others as the options, and the email field comes after the answer.
That single micro-commitment produced 50% more email signups than the single-step version it replaced. The answer also passes to their email platform, so the first message can name the category the contact picked.
Emma Sleep’s landing popup, with the question ahead of the form:
:quality(80))
:quality(80))
The exit popup does the opposite. A visitor already on their way out gets a single email field, no question and no second step, under a direct line asking them not to leave yet.
The exit campaign on the same account:
:quality(80))
:quality(80))
Tikamoon holds one offer steady all year instead of changing it by season: €20 off orders over €200, adapted to each European market in local language and currency.
A fixed credit is easier to value against a high-ticket order than a percentage, because the shopper can see what €20 covers. The campaign brings in around 11,650 subscribers a month.
Subscribers then get early access to the VIP sales, which gives the list a reason to exist after the first order.
Tikamoon’s standing first-purchase campaign:
:quality(80))
:quality(80))
Vepsäläinen runs the same offer through three formats at once, popups, embeds and bars, tied to seasonal promotions, and reached a 17% signup rate.
Their newsletter signup campaign:
:quality(80))
:quality(80))
Set up the landing and exit popups:
Build the landing popup with one question before the email field, options named after your own categories.
Build the exit popup with a single email field and no second step.
Send the answer to the first question through to your email platform, so the welcome message matches the category.
Exclude traffic arriving from your email and SMS tools by suppressing their UTM parameters.
Set a delay on the landing popup rather than firing it on arrival.
Worth knowing
Campaigns shown after two or more page views convert as high as 9.8%. The same campaigns shown the moment someone lands average 3.93%.
Reduce hesitation on product pages without a developer
Dimensions, finishes, delivery timing and whether two pieces match are questions a discount does not answer.
Vepsäläinen answers them in the page itself, using embedded sections that sit inside the page rather than over it. The same format carries room completion suggestions, outlet offers and plain informational messages.
Adding anything to a product page used to take developer time there, so short-run campaign ideas were dropped rather than built. An embed is published from the campaign editor, so the answer to a recurring question goes live the same day someone writes it.
An informational embed on a Vepsäläinen product page:
:quality(80))
:quality(80))
Set up the product page embed:
Pull the question your support inbox gets most about one category.
Answer it in an embed placed near the specifications rather than the top of the page.
Restrict it by URL so a sofa page and a lighting page carry different messages.
Keep it to one embed per page.
Open the product page on a phone and check what the embed pushed down.
Reassure at the cart before discounting
Emma Sleep’s cart campaign carries no form and no discount. The campaign restates the 200-night trial and free returns, adds social proof, and gives one button that reads Complete my purchase.
Against a control group, cart abandonment fell 5.54% and average order value rose 5.5%. More people finished, and they spent more, which points at risk as the thing that had been holding them back.
Emma Sleep’s cart campaign:
:quality(80))
:quality(80))
4murs sells wallpaper and home decor on traffic dominated by organic search, with no paid retargeting to bring a lost session back. Their cart campaign reads the live cart contents on exit and pairs them with a time-limited offer.
Against a control group that saw nothing, it ran a 24.5% click rate. The audience explains most of that. The campaign only fires on a session that already has items in the cart and is on its way out, and the message shows those same items back with a time limit on the offer.
The 4murs cart recovery campaign:
:quality(80))
:quality(80))
Set up the two cart campaigns:
Start with the reassurance campaign: trial length, returns and delivery, on the cart page at exit, with no form and no code.
Put your strongest promise in the first line rather than on the button.
Add the campaign that reads live cart contents second, so the message names what the visitor left behind.
Hold back a control group on both.
Worth knowing
AI cart recovery reads live cart contents, which needs the native Shopify integration rather than a script tag install. On other platforms the reassurance message and a standard exit campaign cover the same moment without naming the items.
Recommend the accessory the product needs
Some home goods orders are incomplete on their own. A curtain needs a rod.
A recommendation triggered by what is already in the cart covers that. Name the accessory and its price, and link straight to it, rather than showing a row of general bestsellers.
AI product recommendations do the same job on Shopify stores without anyone picking the products by hand, and without needing a discount attached.
A campaign recommending the item that completes an order:
:quality(80))
:quality(80))
Set up the accessory recommendation:
Trigger on cart contents, or on the product category in the URL when the visitor has not added anything yet.
Name the accessory and its price in the message, and link straight to that product page.
Add an offer only where the accessory needs one to sell.
Start with the pairing your own order data already shows most often.
Worth knowing
Three strategies cover most of the catalog: best-sellers for a first-time visitor with no history, frequently-bought-together once something is in the cart, and recently-viewed for a returning visitor.
Keep a moving catalog in front of returning visitors
A furniture catalog changes faster than most campaign calendars: new collections, outlet lines, collaborations, seasonal pricing. A returning visitor has no easy way to see what moved since their last visit.
A bell icon in the header solves that cheaply. Clicking it opens a short list of messages a visitor can scroll and come back to, closer to a notifications tab than to an interruption. Every store in this guide runs one.
Tikamoon keeps discount codes, sale countdowns and newsletter incentives in the feed at once, and those campaigns click at 7.87% against 5.08% across all their campaigns.
4murs publishes into the feed year-round: collection launches, brand collaborations, seasonal promotions and decoration ideas. Their recently-viewed item for returning visitors runs a 50% click rate, and needs no email address to work.
The 4murs onsite feed:
:quality(80))
:quality(80))
Vepsäläinen uses the feed for furniture collections, cart reminders and new arrivals. Their ecommerce manager rates every channel as effective, with the feed at the top of the list.
The Vepsäläinen feed on the homepage:
:quality(80))
:quality(80))
Set up the onsite feed:
One welcome item for first-time visitors, set to a visit count of one, so the first page carries a single message.
Everything else set to appear from the second page view, which keeps the red dot meaningful instead of constant.
One item per catalog event, kept live for the length of that event.
A recently-viewed item for returning visitors, which needs no email address.
Worth knowing
Any popup running on a frequency rule should also have a persistent tab, so a visitor who closed it can reopen it on the visits when the popup stays silent. That plus the same offer in the feed covers the gap between displays.
Capture demand for products you cannot ship today
Emma Sleep runs a campaign on product pages where inventory is unavailable, collecting a contact from visitors who would otherwise leave with nothing. Those contacts get a message when stock returns.
A store selling made-to-order pieces can point the same campaign at lead times rather than stock levels, since the visitor’s problem is the same either way.
The Emma Sleep out-of-stock campaign:
:quality(80))
:quality(80))
Set up out-of-stock capture:
Target the pages where availability is missing, with URL rules or a custom property fed from your catalog.
Name the product in the message, so the visitor can see the alert is about the piece they wanted.
Record which product the contact asked about, so the follow-up names the piece rather than the category.
Write the restock message before you publish the capture campaign.
Worth knowing
Browsing history targeting reaches the same visitors on a later visit. A campaign can be shown only to people who viewed that category before, which keeps a restock offer relevant weeks after the first look.
Run the same campaigns across country stores and physical stores
Emma Sleep manages more than 20 country stores in a single workspace, with shared templates and one reporting view. A campaign is duplicated per market, then translated and repriced rather than rebuilt.
Local relevance is where the rate moves. Their Irish Week campaign, with market-specific creative and a local offer, reached a 17.3% email signup rate where the always-on campaign on that same site ran at 7.4%. Targeting and trigger logic did not change between them.
Peak periods work the same way at larger scale. Their Black Friday campaigns run across every market at once, at submit rates between 22% and 27%.
Emma Sleep’s Black Friday campaigns, running in several markets at once:
:quality(80))
:quality(80))
Physical stores get the same treatment through location rules. Vepsäläinen has more than 15 stores, and used a geolocation rule to show visitors from Tampere a campaign announcing the new store there.
Tikamoon uses postal code rules for workshop invitations in cities including Marseille and Lyon, which turns an onsite campaign into attendance at an offline event.
Vepsäläinen’s geolocation rule for the Tampere store opening:
:quality(80))
:quality(80))
Set up market and store rules:
One base campaign per objective, duplicated per market, then translated and repriced in local currency.
Give local moments their own creative, which is the part that changed Emma Sleep’s rate.
Set the location rule, then open the site in a private window from a test location and confirm the campaign appears.
Keep capture running through periods when you cannot promote, with a different message rather than a pause.
Worth knowing
Campaigns can be duplicated in bulk across country stores and they arrive as drafts, so nothing publishes before you are ready. The step that gets missed is URL targeting, which still points at the market you copied from until you change it, and a location rule that never fires is silent rather than broken.
Measure against a control group
Tie each campaign to the purchase event so the orders that follow it are attributed to it. Then hold back a share of the audience, and the difference between the two tells you which of those orders you would have had anyway.
Emma Sleep tests continuously. One exit-intent test compared a fixed discount against a percentage discount and found the percentage framing won by 18% on signup rate. At 4murs, two web push opt-in variants produced a 3.4× difference on the winner.
One setup detail is worth knowing before you launch anything: attribution is not retroactive. A campaign that runs for a month before anyone associates it with the purchase goal has a month of blank revenue data.
Set up attribution and a control group:
Associate every campaign with the purchase event before it goes live.
Hold back a control group on the campaigns meant to change revenue as well as the ones meant to change signups.
Read order value alongside conversion rate, since a campaign can raise emails collected and leave revenue flat.
Name variants so they still make sense in six months.
Worth knowing
Shorten the attribution window for onsite campaigns. The default reaches far enough back to credit a campaign for a purchase it had little to do with, and a few days measures what happened inside the session instead. Keep your own model for the long view.
Frequently asked questions
We have an in-house CRO team. Does Wisepops overlap with them?
Wisepops runs the campaigns that sit on top of the pages rather than testing the pages themselves, so the overlap is small. The usual reason stores add it is execution speed: at Vepsäläinen, campaign ideas for product pages had been waiting in a development queue.
We already use AB Tasty or Contentsquare. Do we need both?
Those tools test and analyze the pages you own. Wisepops adds campaigns that are not part of the page: popups, bars, embedded sections, the onsite feed and web push. Stores commonly run both, with page testing on one side and campaign testing on the other.
We collect emails through Klaviyo forms. What changes?
Wisepops feeds the same lists through a native integration. What it adds is formats and targeting rules an email platform form does not carry: multi-step questions, exit intent on specific page groups, and the onsite feed.
Our conversion rate is already good. What is left to gain?
The part worth measuring is what these campaigns add on top of what the site already does, which is what a control group tells you and a headline rate does not. The audit shows the segments in your traffic and what a campaign for each could add, before you commit to anything.
How long does it take to launch a campaign without a developer?
Campaigns are built and published in a no-code editor. Duplicating a campaign that works and changing the copy takes minutes, which is the reason 4murs gives for being able to run more seasonal campaigns than before.
Is there a free trial?
Every feature is available on a trial that is set up after a demo, so the campaigns you test are the ones matched to your own traffic. Installing from the Shopify App Store is a separate entry path.
Get started
in minutes
Start converting more visitors today.
Get started in minutes and see results right after.