博客
7 分钟阅读 项目实战

卡雷达手记:一个上网方案比价站,三个月赚了小两万

#卡雷达#副业#Next.js

卡雷达(kaleida.com.cn)是我自己在跑的一个站,帮人找最划算的上网方式。号卡、家庭宽带、随身 WiFi,都摆在一个站上比,看中哪个扫哪个,我赚佣金。

做了快三个月,还在出单。这篇记一下这站怎么来的、怎么搭的、赚了多少。不美化,不藏数字。

为什么做

我平时帮几个号卡渠道做点活,越看越觉得这行信息太乱。

同一张移动 39 元 60G 的卡,这个渠道叫”广电正规卡”,那个叫”畅享套餐”,第三个价格还不一样。用户想办张卡,得在七八个公众号、小程序、短视频链接之间来回切,记下来再对比。大部分人比到一半就烦了,随便挑一个下单,事后才发现买贵了,或者合约期比别人长。

市面上的比价站呢,要么数据停在半年前,要么只推自己家的卡,要么 UI 看一眼就想关。

我就想,能不能做一个干净的、把全网在售的都聚合在一起、数据自动更新的站?号卡、宽带、WiFi 都行,用户自己对比,看中扫哪个。

想法就这么来的。不复杂。但真要落地,一堆问题冒出来:全网在售的从哪拉?格式不统一怎么合并?数据怎么保持新鲜?用户怎么下单、佣金怎么算到我头上?部署要不要买服务器?

一个个来。

怎么搭的

整体三层:

五个数据源 → 统一管线 → PostgreSQL → 网站展示 → 用户扫码下单 → 佣金归我

数据从哪来

号卡这行没有统一的开放平台,想聚合全网,只能一个一个渠道对接。我对接了五个:

  • 浩卡联盟——主源,商品最全,接口用 AES-256-ECB 加密
  • 号易系统——副源,PHP Session 登录,老式
  • 172号卡——副源,Bearer JWT,登录要过验证码,我写了 Python 脚本 OCR 自动过
  • 宝时信——宽带专用,JWT 加 AES-ECB-128 双重认证
  • 飞利猫——随身 WiFi 专用,图片验证码登录

五个渠道拉回来的格式五花八门。中间加了一层适配器,全转成同一种结构,再写进 PostgreSQL。表结构简单,主键是(来源,ID),商品对象整个塞 jsonb 字段里。加渠道、改字段都不用动表结构。

现在站上号卡、家庭宽带、随身 WiFi 三大类,上千个在售 SKU,四大运营商都覆盖了。

网站本身

Next.js 16,TypeScript,Tailwind。选 Next.js 三个理由:服务端组件直接查库省了 API 层、ISR 让页面秒开、Vercel 部署零配置。

几个页面:

  • 首页:卡片式布局,月租、流量、通话、合约期一目了然,能按运营商、价格、流量筛选排序
  • 详情页:完整资费、证件要求、可发/禁发地区、合约期和优惠期分开标(这俩在号卡行业是两回事,很多坑就在这)
  • 订单查询:用户输手机号查自己的订单和物流,我后台看全量

还加了个 AI 聊天助手。用户说”月预算 30,流量 100G 以上”,它从站上真实商品里推荐。关键是只能推真实存在的,不许瞎编——不然推荐了不存在的卡,点进去报错,信任就崩了。

移动端优先。号卡用户大半手机浏览,所有页面先保证手机体验,弹窗在手机上是底部抽屉,桌面才居中。

数据怎么自动更新

号卡产品经常上下架、改价,数据不更新就是死的。

写了个同步脚本,每 30 分钟跑一次,去五个渠道拉最新数据,转成统一格式,写进数据库。只写库,不用重新部署网站——这点折腾了一阵。早期版本是同步完 git push 触发重新构建,一天几十次构建,又慢又蠢。后来迁到自建 PostgreSQL,同步脚本直写库,运行时直读库,数据新鲜度和部署彻底分开。

同步脚本和数据库都跑在腾讯云一台 4 核 8G 的服务器上,crontab 定时调。

部署:Vercel 白嫖

网站托管在 Vercel,免费。个人项目够用,每月 100GB 流量,自动 HTTPS,自动 CDN,push 代码自动部署。这站跑了快三个月,没花过一分钱托管费。

数据库一开始用 Supabase,后来 egress 流量超了免费额度,迁到自建 PostgreSQL。省了每月几十刀。

域名 kaleida.com.cn 在阿里云买的,一年几十块,Vercel 后台绑一下,SSL 证书自动签发。这步看着小,对转化影响大——kaleida.com.cn 和 xxx.vercel.app,用户信任度两个级别,没人敢对着一个 vercel.app 的网址扫码填身份证。

硬成本:域名几十块一年,加一台腾讯云轻量服务器。服务器是大头,也就一杯咖啡钱一个月。

钱怎么赚的

号卡 CPS,按销售分成。

流程:我在浩卡联盟等渠道注册成代理,拿一个代理 ID。站上每个商品的下单链接都绑着我的 ID。用户看中一张卡,点开,弹出开卡海报(带我的二维码),微信扫码办理。运营商开卡成功,按规则结算给我。

技术上就一行环境变量的事:NEXT_PUBLIC_AGENT_ID=你的代理ID。整个站所有海报、下单链接自动带上这个 ID,佣金自动归你。

下单、支付、发货、售后,全是上游渠道干。我只负责把流量引过来,摆清楚,让用户点进去下单。这就是 CPS 香的地方——不用囤货、不用发货、不用售后,纯靠流量吃饭。

赚了多少

老实讲,没网上那些”AI 搭站月入两万”吹得那么玄乎。

从 7 月底上线到今天(10 月 19),快三个月,三个平台加起来累计佣金不到一万四。平均下来月入四五千。

不多。但有几个前提得说清楚:

这是纯利润。服务器一杯咖啡钱,不用囤货,不用发货,不用售后。主要投入是我的时间,和域名那几十块。

而且大部分是被动收入。数据自动同步,站自动跑,我不用每天盯着。我该干嘛干嘛,后台偶尔看一眼订单。

快三个月,从零到累计不到一万四。没发大财,但一个还在往上走的、几乎零成本的小副业,立住了。

几点真实的体会

第一,聚合比单点值钱。号卡这行每个渠道都推自己家的,用户在渠道之间来回切。你做那个把所有渠道摆一起的人,价值就出来了。机票、酒店、信用卡,都是这个理。

第二,数据新鲜度是命门。早期同步完要 git push 重新部署,一天几十次构建,又慢又蠢。迁到同步直写库、运行时直读,数据几分钟就新鲜了。这改动没增加收入,但让站能持续跑下去不崩。

第三,合规比流量重要。号卡这行监管在收紧,7 月底线上第三方售卡渠道全面关停过一轮。我做的时候加了登录墙,号卡产品未登录不可见,只对私域开放。短期损失了些公域流量,长期看能活下来才是第一。

第四,信任成本是最大的成本。自定义域名、真实的订单查询、AI 只推荐真实存在的卡、合约期和优惠期分得清清楚楚——这些不是为好看,是为让用户敢在这个站扫码填身份证。一个 vercel.app 域名的站,再好看也没人敢填。

最后

卡雷达不是什么惊天动地的项目,就是一个把信息差做成了产品的站。号卡、宽带、WiFi 这行的信息差一直在,只是没人愿意下功夫把五个渠道的数据都拉过来、统一格式、保持更新。活儿不性感,但钱就在这。

代码我没开源,仓库是 private 的。这站的核心价值不在代码,在数据渠道的对接和那套同步逻辑,开源了反而没意义。想交流的,站上 /agent 页面有我微信。

快三个月,累计小两万。没发大财,但跑起来了,还在涨。这就够了。