Your best customers who have gone quiet in the inbox, before they churn.
At a glance
A cross-channel card that joins Ecwid customer spend with email-engagement data to surface your highest-value customers who have not opened or clicked any email in the last 90 days. It is an at-risk-revenue early warning. A top spender who stops engaging with email is often weeks away from lapsing entirely, and winning back an existing best customer is far cheaper than acquiring a new one. The card combines Ecwid with an email marketing connector, matching customers on email address.
| What it counts | The number of high-value Ecwid customers (top spenders by lifetime or trailing value) who show zero email opens and zero clicks across the trailing 90 days in the connected email platform. |
| API endpoint | Ecwid side: GET /v3/{store-id}/customers and GET /v3/{store-id}/orders (OAuth2 with read_customers, read_orders). Email side: engagement events from the connected email marketing connector. The two are joined by Vortex IQ on email address. |
| How “high-value” is set | Ranked by customer spend (lifetime or trailing window) from Ecwid order history; the top cohort is treated as high-value. The cut-off is configurable per merchant. |
| How “unengaged” is set | No recorded open and no recorded click in the email platform over the trailing 90 days. A customer with a single open is engaged for this card’s purpose. |
| What it excludes | Customers with no email address on file (cannot be matched); customers who have unsubscribed (a separate state from unengaged); customers below the high-value cut-off. |
| Currency | Number. The card counts customers; the spend that makes them high-value is shown per row in the store currency, but the headline metric is a count. |
| Time window | 90D (engagement lookback). |
| Alert trigger | >10 top spenders unengaged 90d. |
| Sentiment | Inverse gauge. Sensitive card; a rising count is bad, and the alert is the headline. |
| Roles | owner, marketing. |
Calculation
Calculated automatically from your Ecwid data. See the At a glance summary above for what the metric tracks and the worked example below for a typical reading.Worked example
A UK hobby seller of artisan coffee running an Ecwid widget on a WordPress blog, with a connected email marketing tool. Reading taken 20 May 26, 90D engagement lookback. The seller has a small but loyal base of repeat buyers. The card joins their Ecwid spend to email-engagement history and surfaces the top spenders who have gone silent in the inbox.| Customer (masked) | Lifetime spend | Orders | Last order | Last email open | Status |
|---|---|---|---|---|---|
| j****@gmail.com | £640 | 14 | 02 Feb 26 | 28 Jan 26 | unengaged 90d+ |
| s****@outlook.com | £580 | 11 | 18 Jan 26 | none in 90d | unengaged 90d+ |
| m****@icloud.com | £515 | 9 | 24 Feb 26 | 19 Feb 26 | unengaged 90d+ |
| r****@gmail.com | £470 | 8 | 09 Feb 26 | none in 90d | unengaged 90d+ |
| …8 more rows |
- Segment these twelve out of the main list and send a dedicated win-back, not the standard newsletter they are already ignoring. A personal “we miss you, here is 15% on your usual” tends to outperform a generic blast.
- Check whether silence means switched channel, not lost customer. A buyer who still orders (last order Feb) but never opens email may simply prefer to buy direct; a light-touch SMS or a thank-you note in the next parcel can re-open the line.
- Verify deliverability. A cluster of “none in 90d” can mean emails are landing in spam rather than being ignored; check the email connector’s deliverability signals before assuming disinterest.
- Track the count down. As win-back sends land opens and clicks, customers drop off this card, which is the success metric.
Sibling cards merchants should reference together
| Card | Why it matters next to this card | What the combination tells you |
|---|---|---|
| Total Revenue (30d) | The spend backdrop. | Sets the revenue context the high-value cohort sits inside. |
| Repeat Customer Rate | The loyalty base. | A falling repeat rate plus a rising unengaged count is an early churn signal across the whole base. |
| Repeat Purchase Rate | Behaviour view. | Confirms whether unengaged customers are still buying or have stopped ordering too. |
| Total Customers | The denominator. | Puts the at-risk cohort in context; 12 of 80 best customers is a different story than 12 of 8,000. |
| Orders to Email Campaign Attribution | Channel value. | If email drives meaningful revenue, losing these openers is directly costly. |
| New Customers (30D) | Acquisition balance. | Win-back of a lapsing best customer is cheaper than replacing them with new acquisition. |
| Revenue at Risk | The money view. | Quantifies the spend tied up in the disengaging cohort. |
Reconciling against Ecwid
Where to look:
Ecwid Control Panel (my.ecwid.com) -> My Sales -> Customers
Sort by total spend to confirm the high-value ranking. Ecwid shows order count and total spent per customer, which is the spend half of this card.
This is a cross-channel card, so the comparison also draws on your email marketing connector. The engagement half (opens and clicks over 90 days) lives in that platform’s reporting, not in Ecwid. To fully reconcile a row, check the customer’s spend in the Ecwid Control Panel and their open / click history in the email tool’s contact or subscriber view. The card reconciles against BOTH dashboards.
Why our number may differ from the two source dashboards:
| Reason | Direction | Why |
|---|---|---|
| Email match | Ours lower | Customers whose Ecwid email does not match an email-platform contact (typo, different address, guest checkout email) cannot be joined and are excluded. |
| High-value cut-off | Either | Our top-spender threshold is configurable; Ecwid’s customer list is unranked, so the cohort boundary is something we apply. |
| Unsubscribed vs unengaged | Ours lower | We treat unsubscribed as a separate state; the email tool may lump unsubscribed and unengaged together in some views. |
| Engagement window | Boundary days | Our 90D lookback uses UTC; the email platform may report engagement in its own time zone, shifting a few edge-case opens. |
| Sync lag | Marginal | A very recent open may not have synced from the email connector yet. |
ecwid_high_value_unengaged = count(customers WHERE high_value AND no_open_no_click_90d), joined on email address between Ecwid and the email marketing connector.