<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:atom="http://www.w3.org/2005/Atom" version="2.0">
	<channel>
		<title>Candy Japan blog</title>
	    <link>http://www.candyjapan.com</link>
	    <description>Most recent posts at candyjapan.com</description>
	    <atom:link rel="self" href="http://www.candyjapan.com/rss.xml"/>

		<item>
			<pubDate>Sat, 11 Jul 2020 23:06:18 +0000</pubDate>
			<title>What&#39;s it been like not running Candy Japan for a while?</title>
			<link>http://www.candyjapan.com/candy-japan-pause-thoughts</link>
			<guid>http://www.candyjapan.com/candy-japan-pause-thoughts</guid>
			<description>
<![CDATA[
<p><a href="/">Candy Japan</a> ships Japanese candies to subscribers around the world. Or at least it would, except recently I had to pause the service because COVID prevented international shipping by Japan Post. I had been running the site continuously for almost 10 years already, and at the time of pausing it it was my only revenue-generating project as well, so what has it been like suddenly NOT running it?</p>
<h3>Financially</h3>
<p>Your first thought might be that would have been financially tough for me. </p>
<p>Net income from the site has always been very low, lately usually around $2000 / month, which after tax is <a href="https://www.candyjapan.com/life-in-japan/what-it-costs-to-live-in-japan-2019">just about enough</a> to pay for necessities when you live outside of major cities in Japan without having expensive hobbies. But I've learned from the past that living from your own projects means alternating times of feast and famine, and had planned accordingly. </p>
<p>Luckily now it looks like I might not even have to dip into savings after all, because the Japanese government is providing some great support. They gave every sole proprietor a one-time aid of up to $10000 (if you knew to apply for it), depending on how much they were affected by the measures taken to fight the virus. Since I was fully affected I was able to get the full amount.</p>
<p>Between the aid and having planned for times like these, I didn't need to stress too much. </p>
<h3>Mentally</h3>
<p>Candy Japan wasn't super time consuming to run. As shipments are sent twice a month, there are certain tasks that need to be done on the same schedule. These are: finding and buying the next candy to send, confirming they get sent to the correct people (taking into account refunds, changing addresses etc.), dispatching the shipment, taking product photos, writing the newsletter, customer support, bookkeeping/tax stuff, and finally marketing.</p>
<p>All of them can be done in less than 2 hours per day if I'm focused, because I've done them a hundred times before and have systems in place to help do them faster. For instance part of my bookkeeping is done by scripts, shipping labels are generated by a script as well.</p>
<p>But projects don't just take clock time, but a chunk of your mental resources as well. You might be running a business that takes a fourth of your time, but it can still take half of your mind. There is always the desire to find "the next stage" for the service. Trying to find something to make it more fun so customers would subscribe for longer, some way to cut costs, some way to reach more customers. You can think about this stuff nonstop.</p>
<p>It's been pretty great having about 2 hours of extra time each day, but half of my mind back.</p>
<h3>Thanks for reading</h3>
<p>For a more personal update, I also wrote a post about <a href="http://www.bemmu.com/what-ive-been-doing-instead-of-candy-japan">what I've been doing lately instead of running Candy Japan</a>.</p>
]]>
			</description>
		</item>

		<item>
			<pubDate>Fri, 10 Apr 2020 14:32:08 +0000</pubDate>
			<title>Candy Japan shipments paused</title>
			<link>http://www.candyjapan.com/on-pause-due-to-covid19</link>
			<guid>http://www.candyjapan.com/on-pause-due-to-covid19</guid>
			<description>
<![CDATA[
<p><a href="/">Candy Japan</a> ships surprise boxes of Japanese candy to subscribers around the world on a twice-monthly basis. On this blog I share behind-the-scenesy stuff about it, and this one is about how the coronavirus situation has affected the site (spoiler: not positively).</p>
<h2>International shipping halted</h2>
<p>Twice a month we prepare a batch of boxes, then haul them to a nearby post office for shipping. This time after finishing the batch, for the first time ever, it's the hauling part that failed. When trying to send them off at the post office we were informed that because of the coronavirus situation, mail could not be sent out at all by the shipping method we use (SAL). Besides this, the more expensive airmail option was also shut down for 100+ countries.</p>
<p>I took this to mean that international shipping has basically been turned off, and acted accordingly. </p>
<p>I informed customers of the stoppage, and refunded around ~$3500 in prepaid orders since it was unclear when shipping could resume. My hand-crafted subscription system wasn't built with this in mind, so it took about 10 hours of work just to send refunds and pause the service, including hand-customizing hundreds of emails.</p>
<h2>Stuck with hundreds of boxes of candy</h2>
<p>Up to this point I was only concerned with telling everyone about the situation quickly and promptly issuing refunds. What I had tried not to think too much about yet was what to do with the ~200 boxes of candy we had already packaged, now sitting in storage, unable to be sent.</p>
<p>I do have a way to resell it in Japan, but at about a quarter of its original price, and now the work put into packaging it would become more work of unboxing everything again. </p>
<p>Not wanting to waste perfectly good sweets that I had already paid for, I started to look more carefully about how many of them I could ship out, only including the countries with working postal systems for airmail. While I had already refunded everyone, if I could get some of the shipments through, I could at least adjust their accounts such that I would owe them one less box in the future. </p>
<p>I guess one option would have been doing an epic hours-long joke "unboxing" video where someone unboxes two hundred boxes with exactly the same contents every time. Maybe not.</p>
<h2>Some shipments can still be sent?</h2>
<p>The list of stopped countries I received from the post office had over 100 countries on it, but actually cross-checking this list against subscriber countries, I discovered that I could actually still ship to about 80% of subscribers. </p>
<p>With most shipments still possible, perhaps I overreacted by stopping everything. I could have just temporarily suspended the affected 20% and taken the hit for the increased shipping cost for the rest. But thinking it over it felt like the right choice, as shipments might be unreliable now and the closures would still likely expand to more countries.</p>
<p>After sending out the shipments, exactly that happened. Except much sooner. Between revising the batch to include only the people with functioning postal systems and then handing only those boxes to the post office, the list had already expanded, now standing at 124 countries. I discovered this by having two large bags full of boxes delivered to my apartment, with the mailman regretting that actually, they could not be sent.</p>
<h2>It's just a flesh wound</h2>
<p>I don't really feel too bad having to pause the service for a while, as this is the first time I've had any kind of break from running Candy Japan in close to 10 years. </p>
<p>I also got to discover that all of my customers are incredibly cool people, being nothing but supportive when I had to inform them of the candy they now wouldn't be receiving. Some even showed personal concern for us having to pause the business (don't worry, we'll be fine). </p>
<p>One reply noted that the timing for the pause was good, as the subscriber also just lost their job as well.</p>
<h2>Thanks for reading</h2>
<p>If you find the idea of getting random Japanese sweets interesting, please subsc... oh yeah, you can't right now. But you can put your email address in the little box on the <a href="/">front page</a> and I'll get back to you when subscriptions are open again.</p>
]]>
			</description>
		</item>

		<item>
			<pubDate>Fri, 20 Dec 2019 16:48:32 +0000</pubDate>
			<title>Candy Japan 2019 Year in Review</title>
			<link>http://www.candyjapan.com/2019-year-in-review</link>
			<guid>http://www.candyjapan.com/2019-year-in-review</guid>
			<description>
<![CDATA[
<h1>Candy Japan 2019 Year in Review</h1>
<p>Hi, I run a site called <a href="/">Candy Japan</a>, which ships surprise boxes of Japanese candy to subscribers around the world up to twice a month. The site launched in 2011, and as the new year approaches, it's been my tradition to do a yearly review of how things are going.</p>
<p>So here's how 2019 went. Spoiler: it was mostly full of fail.</p>
<h2>Key stats</h2>
<p>Avg. monthly sales were $6,560 - expenses $5,270 = profit $1,290 (vs. $1,470 last year).</p>
<p>Number of subscribers fell by 34%, going from 314 in January down to 207 in December.</p>
<p><img alt="Candy Japan 2019 chart" src="/static/2019-candy-japan-chart.svg" /></p>
<p>The site had 130k visits from start of the year to mid-December, down from 145k in the same period last year.</p>
<p>Of these visitors 43k came from organic search (vs. 35k in 2018), 32k from links on other websites, 21k direct, 10k social, and 7k clicked on paid ads.</p>
<h2>Cutting costs</h2>
<p>The monthly profit of $1,290 was down from last year, but not as much as you might expect from the subscriber drop, because I was able to cut several costs here and there. </p>
<p>For example, about $100 / month was saved by switching from Recurly to Stripe subscriptions. I didn't start with Stripe, because it wasn't available yet when I started the site, and they only added subscription support later on.</p>
<h3>Top expenses</h3>
<p>Buying candy is unsurprisingly my largest cost at $2,450 / month. This year I spent more time finding the best prices for the candies I ordered, so that should have resulted in some savings as well.</p>
<p>The second largest cost is shipping at $1,800 / month, which doesn't seem possible to improve upon right now (there are volume discounts, but I'm far from getting those).</p>
<h3>Do or delegate</h3>
<p>I let go of my two freelancers who had been tasked with customer support and newsletter creation, saving $120 / month. With less customers it is easy enough for me to do the support myself. Writing the newsletter and taking photos for it is a bit more work, but I feel good about communicating with people directly, and enjoy the photography. </p>
<p>There is always overhead when having help. Instead of just doing something, you need to explain the task, verify the work and pay for it. For the newsletter I also needed to ship products to the author every time, leading to delays and confusion sometimes.</p>
<p>I think in the future I wouldn't delegate small tasks I am able to do myself, if they only take a few hours each week to do. </p>
<h2>YouTube advertising experiments (fail)</h2>
<p>I spent $310 / month on ads on average. It's a different type of expense, as I would gladly spend infinite dollars on it if it just had a positive return. Spend is very low now, simply because I have not yet found an advertising channel I could scale. </p>
<p>I'm a bit obsessed at trying to crack paid YouTube ads, because if I could make even a little bit of profit, it would be very scalable. I <a href="https://www.candyjapan.com/behind-the-scenes/what-i-learned-advertising-on-youtube">tried this before</a>, but the cost was always more than I could hope to make back in a reasonable timeframe. I gave YouTube ads two more shots this year.</p>
<h3>Attempt #1</h3>
<p>Fiddled with targeting settings, streamlined the ordering process, then re-ran the campaign for a bit. Campaign still didn't seem to be profitable.</p>
<h3>Attempt #2</h3>
<p>Figured that with only one subscription option I might not be making as much as I could from each visitor. Potential customers looking to spend a different amount than the $29 / month option I had wouldn't be able to order at all, leaving money on the table.</p>
<p>Adding multiple tiers meant writing code, as I my homegrown Python subscription system didn't support it. Still, it wasn't as painful to make the change as I had feared, and in just a week I had two new tiers available: get just the first box of each month at $12.95, or the second one at $17.95 / month.</p>
<p>After this I was ready to try the campaign again, and decided to do <a href="https://www.candyjapan.com/behind-the-scenes/tried-youtube-ads-again">more careful analysis</a> this time. Sadly I was still a few dollars short from merely breaking even.</p>
<h3>Next attempt?</h3>
<p>Since I'm close to breakeven now, these ad experiments are no longer expensive. Even if I spend thousands showing my ad unprofitably, I still get most of that back. So I want to keep experimenting, and already know the next thing to try. </p>
<p>YouTube charges for an ad when it gets clicked OR watched for over 30 seconds. <a href="https://www.youtube.com/watch?v=-0aY1GxvRMk">My ad</a> happens to be 30 seconds long, mostly because creating the animation was expensive. But that might not be the optimal length.</p>
<p>There could be a large percentage of people who are not really that interested in Candy Japan, but still watch the entire ad, as it's short enough that you might just wait and fiddle with your phone instead of clicking the "skip" button. </p>
<p>I'm curious if making the ad artificially longer would get these uninterested people skip it before I get charged. If someone sees an uninteresting ad begin and see that it is, say 3 minutes long, then they'd be more likely to skip it quickly, as just waiting through it would take too long.</p>
<p>I could extend the ad by adding an unboxing video at the end, and would be curious to see if the added length would make more people skip it during the first 30 seconds. If that made it just 20% cheaper to run, then it would make the campaign profitable. Besides the skip effect, talking more about the service might also convert more of the people who watch the entire thing.</p>
<h2>Messed up a major A/B test (fail)</h2>
<p>Embarrassingly during 2019 I messed up a major A/B test where I tried to compare two completely different landing page designs against each other. The test ran for 3 months to get enough data, after which I spent a fair bit of effort analyzing and <a href="https://www.candyjapan.com/behind-the-scenes/ab-testing-landing-page-template">writing up</a> the results. I thought the test was an improvement at 91% confidence.</p>
<p>Except that <a href="https://www.candyjapan.com/behind-the-scenes/previous-ab-test-results-invalidated">someone pointed out later</a> that the result was completely invalid due to a stupid little bug: I set the Set-Cookie header in two different places, overwriting the variable that was supposed to control my <a href="https://www.candyjapan.com/static/candy_landing_page_a.png">A</a>/<a href="https://www.candyjapan.com/static/candy_landing_page_b.png">B</a> test! <em>facepalm</em></p>
<p>The big thing I learned from this was that running what was effectively an A/A test still managed to convince me that I had found an improvement. Without knowing about the bug, following the winner of the test made sense, but not my unwarranted inner confidence of its validity.</p>
<p>I haven't re-run the test yet; it will be interesting to see which design was actually better.</p>
<h2>Social media tests (fail)</h2>
<h3>Instagram</h3>
<p>I didn't have Instagram for Candy Japan before, because honestly I don't really understand it. Maybe because I spend more time reading content, and don't really see the appeal of scrolling through a feed of pictures.</p>
<p>Still, "start posting on Insta" is possibly the top suggestion whenever I mention trying to find ways to promote Candy Japan. </p>
<p>Fine. I <a href="https://www.instagram.com/candyjapanshop/">started posting</a>. </p>
<p>Six months and 51 posts later… 40 followers. No sales.</p>
<p>Looks like I can't cargo cult my way into Instagram success that easily.</p>
<h3>Flipboard</h3>
<p>On Flipboard you can curate your own magazine on a topic of your choice and "flip" articles to it. It's a bit like starting a subreddit, except you control it completely. Figured I'd try to start a <a href="https://flipboard.com/@bemmu/japanese-candy-3sbgtuhfy">Flipboard for Japanese candy</a>, to which I flipped articles relating to Japanese candy once a day for a little over a month.</p>
<p>I figured if it gained readers, then I could occasionally post some of my own content there as well. </p>
<p>It didn't. Not a single reader in fact.</p>
<h2>Content marketing test (promising)</h2>
<p>I was curious if by adding a "news" section to the site and using the proper schema tags I could get Google to consider it to be a news site and surface that in its results. I figured I could summarize candy-related articles that originally appeared in Japanese news sites. </p>
<p>Surprisingly this trial worked, and Google Discover sent me 15,000 clicks, but the article they picked up was <a href="https://www.candyjapan.com/news/candy-set-execution">about North Korean sweets</a>, so it didn't lead to any new subscribers.</p>
<p>However now I rank #2 in Google for "north korean candy"! Not sure if success.</p>
<h2>Side-project marketing test (success?)</h2>
<p>Now to wrap things up, here's something that worked.</p>
<p>I was inspired after reading <a href="https://marketingexamples.com/seo/seo-project-marketing">this post</a> about launching side projects as a form of marketing: create small fun / useful things and launch them under your main domain. Hopefully each launch will then get backlinks from sites that wouldn't otherwise have linked to you, and hopefully improve the ranking of the main site.</p>
<p>Seems like a great fit, as I just love short programming projects with a quick payoff. For example I often participate in <a href="[http://ldjam.com/](http://ldjam.com/)">Ludum Dare</a> just for fun. So I started thinking about what to create, and realized I already had something perfect that I had created just weeks before as just an experiment: a <a href="https://www.candyjapan.com/anim">candy animation generator</a>.</p>
<p>I already had it on its own site, but after reading the post I moved the widget under my main domain and <a href="https://www.producthunt.com/posts/your-word-in-candy">submitted that to Product Hunt</a>. Result: 6000 visits, a handful of backlinks and even two sales. Yatta! </p>
<h2>Conclusion</h2>
<p>It seems hard to grow Candy Japan now, there are many things going against it. There's a general <a href="https://trends.google.com/trends/explore?date=all&amp;geo=US&amp;q=japanese%20candy">fading of interest towards japanese candy</a> and harsh competition.</p>
<p>The other day my wife wanted to show the site to a friend, but actually couldn't find it because there are so many similar ones.</p>
<p>Personally in 2019 I was in study mode, doing online courses on Swift and deep learning, filling holes in my math background, and continuing my long journey of learning the kanji.</p>
<h3>Explore-exploit</h3>
<p>For 2020 I will go back into "exploration mode" again and spend more time launching small projects. During my life I've released around 50 random projects, of which 5 were some level of "successful". Based on that, if I try 10 small new projects I would have a fair (~65%) chance of success with at least one of them. </p>
<p>I will keep running Candy Japan as before and improving it when I come up with things to try, but in my mind this has downgraded from "the project", to just "a project".</p>
<p>Thanks for reading, and do <a href="/">subscribe</a> if you'd like to try some candy for yourself.</p>
]]>
			</description>
		</item>

		<item>
			<pubDate>Sun, 09 Jun 2019 15:56:46 +0000</pubDate>
			<title>How I went from being an anime geek to having a stint as a manga translator</title>
			<link>http://www.candyjapan.com/my-stint-as-a-manga-translator</link>
			<guid>http://www.candyjapan.com/my-stint-as-a-manga-translator</guid>
			<description>
<![CDATA[
<p>I was going through old folders on my hard disk, and found this picture that made me remember a period of my life that I had almost forgotten about — that time I worked as a manga translator (<a href="https://vaara.finna.fi/Search/Results?lookfor=Sepponen%2C+Bemmu&amp;type=Author&amp;lng=en-gb">translator bibliography as proof</a>). Story time.</p>
<p><img alt="manga translator tired at desk" src="/static/manga_translator.jpg" /></p>
<h2>How I got into animu and Japanese</h2>
<p>Back in the 90s I was one of those annoying anime geeks who would obsess over any piece of animation, as long as it was made in Japan. Anime entered my consciousness after getting my first Internet connection, and suddenly finding that 1) it's a thing 2) there's a subculture of people obsessed with this thing. </p>
<p>At that time downloading video was a ridiculous idea (would there ever be such bandwidth?), but I found a German guy online who'd mail me VHS tapes of Ranma 1/2.</p>
<p><img alt="Ranma 1/2" src="/static/ranma.jpg" /></p>
<p>I found some basic Japanese writing and grammar information online, and managed to just about learn hiragana and some extremely basic vocabulary that way, but it was too hard to make progress from just my bedroom. I was pretty much stuck until several years later when at the university I was able to take actual Japanese classes. </p>
<p>I probably annoyed everyone there, including my teacher with my overeagerness, but my enthusiasm pushed me through all the classes we had. After those I applied to become an exchange student and was accepted. I won't get into that story here, but suffice to say I learned a ton during my two years in Tokyo, and probably annoyed a whole new batch of people.</p>
<h2>How I got work as a manga translator</h2>
<p>I had learned a few hundred basic kanji, and was progressing through Heisig's famous book "Remembering the Kanji", so I thought I was almost done with this whole kanji thing and pretty much ready to do actual translation work.</p>
<p>Here's me back then, probably thinking I'm just wicked smart.</p>
<p><img alt="I'm so awesome" src="/static/pikkubemmu_japanissa.jpg" /></p>
<p>This was incredible hubris on my part, as now 10 years later I STILL feel like I'm nowhere near "finished" with my kanji study. But it worked for my advantage in that I believed in myself enough that I managed to convince others to believe in me as well. </p>
<p>I made a small work sample where I translated just a few pages of a manga from Japanese, and sent it to two manga publishers. They did not advertise vacancies, or in any way indicate that they were looking for new translator; I simply sent them a letter out of the blue. I had the work sample very sleekly packaged, and used Photoshop (well Gimp actually) to really typeset my translations into the speech bubbles, so it looked almost like a real published thing. It must have made an impression, as BOTH of the companies agreed to hire me on a freelance basis.</p>
<p>It was rather surreal going to the offices of these famous publishers, and meeting with their professional translators, and somehow no-one shot me down and I was actually allowed to proceed with the work.</p>
<h2>Doing the translation work</h2>
<p>Pretty soon after actually getting the first task, I realized that it's actually a lot of work to translate even a single book. </p>
<p>It turns out that Japanese is very compact, and it was my job to somehow creatively fit a translation into the limited space of the speech bubbles. Another challenge was all the onomatopoeia: in Japanese there are sound words for everything, even silence ("shiiiin"). </p>
<p>Perhaps it was a vision softly creeping that left its seeds while I was sleeping, but after a lot frustrated attempts, somehow I managed to find a passable translation even for the sound of silence (no, I don't remember what it was).</p>
<p><img alt="the sound of silence" src="/static/shiin.jpg" /></p>
<p>Now I was finally face to face with the reality that I didn't actually know Japanese nearly as well as I had convinced myself that I did. But it turns out that once you are committed, with people relying on you... well, you find a way to do it. Which in my case meant relying heavily on my electronic Japanese dictionary (no smartphones back then), and whenever there was anything slangy or colloquial also on the help of my back then Japanese girlfriend (now <a href="https://www.youtube.com/watch?v=0AgDbAT56I0">mai waifu</a>).</p>
<p>Thanks to her help and just relentlessly consulting the electronic dictionary (and accidentally smashing one), I was able to make a passable translation that resulted in little complaints from the editor, and even got decent reviews. </p>
<h2>Why I stopped</h2>
<p><img alt="" src="/static/akira_shrinking.png" /></p>
<p>My limited ability made it hard to keep up with the deadlines. I had imagined translating perhaps a book a month at most, but their expectation turned out to be the completion of three books each month. My editor was constantly complaining about the work being late. </p>
<p>We kept up the work through 14 books total, including the complete <a href="https://en.wikipedia.org/wiki/Phantom_Thief_Jeanne">Kamikaze Kaitou Jeanne</a> series and 7 books of Yu-Gi-Oh, but eventually the pace was just too hard to keep up with.</p>
<p><img alt="" src="/static/phantom_thief_jeanne.jpg" /></p>
<h2>Thanks for reading</h2>
<p>I learned three things from the experience.</p>
<p>Getting to live my dream of being a manga translator was a great experience to have, as it taught me how little I really know. The humility motivated me to study harder later, which I am still doing daily. I'm still not even through all junior high school kanji, and need much more reading practice. Kanji for names? I know nothing.</p>
<p>On the other hand I also learned that sometimes you can get something you want simply by showing up and asking for it. It's bizarre that if I had known accurately how little I know, I would never have thought myself qualified, and would never have even tried to apply for the work I managed to get.</p>
<p>Final learning? Perhaps that if you do put yourself in a difficult situation out of ignorance, just the commitment of it can help you push through.</p>
<p><img alt="" src="/static/azumanga_daioh_chopsticks_break.gif" /></p>
]]>
			</description>
		</item>

		<item>
			<pubDate>Tue, 04 Jun 2019 07:15:04 +0000</pubDate>
			<title>Our cost of living in Japan in USD (2019)</title>
			<link>http://www.candyjapan.com/what-it-costs-to-live-in-japan-2019</link>
			<guid>http://www.candyjapan.com/what-it-costs-to-live-in-japan-2019</guid>
			<description>
<![CDATA[
<p>I have been living in Japan for 10 years now. I'm writing this from my home in Tokushima, a city of 260,000 people on the island of Shikoku. Before Tokushima we used to live in Tokyo. </p>
<p>To make our spending habits clear to myself, and to share with anyone who might be thinking of living in Japan, here's a list of everything I could think of that we spend money on here each month. My wife is very good at keeping track of these things, so they are mostly based on actual receipts.</p>
<!-- ffmpeg -i video_broken_on_ios.mp4 -pix_fmt yuv420p working_video.mp4 -->

<video autoplay id="map" muted playsinline style="width:100%">
  <source src="/static/map_zoom.mp4?foo" type="video/mp4">
  <source src="/static/map_zoom.ogg" type="video/mp4">
</video>

<script>
map.pause();
function setCurrentTime() { 
  var scrollBottomPosition = window.scrollY + window.innerHeight;
  var animStartY = Math.max(innerHeight, map.getBoundingClientRect().top - document.body.getBoundingClientRect().top);
  var animStopY = map.getBoundingClientRect().top + innerHeight - document.body.getBoundingClientRect().top;
  var zeroToOne = Math.min(1, Math.max(0, scrollBottomPosition - animStartY)/(animStopY-animStartY));
  map.currentTime = zeroToOne * 2; 
}
window.onscroll = setCurrentTime;
setCurrentTime();
</script>

<h2>Internet: $28 / month</h2>
<p>We have 125Mbps down, 82Mbps up fiber to home for $28 / month. Our Internet actually became cheaper since last time, and we didn't need to do anything. One day we just received notice that our Internet connection will now be 25% cheaper than before. </p>
<p>Such gradual discounting has been happening ever since we subscribed to this. The current price is almost half of what it was when we signed up. Thanks NTT West! It really seems to be unlimited, never hit any caps or mystery fees during our years of usage. Also very reliable, I can't recall it having ever been down.</p>
<p><img alt="" src="/static/internet_2019.png" /></p>
<p>The speed was measured over WiFi, I haven't tried how fast a direct connection would be. I am connected through an AirPort base station at 5Ghz. Decided to switch to this fancy base station after several of our neighbors were on the same contested channels. Having 5Ghz all to ourselves has been a noticeable improvement.</p>
<h2>Phone: $73 / month</h2>
<p>We are both on <a href="https://www.bmobile.ne.jp/english/">B-Mobile</a> now, making our combined phone bills $46 / month. I assume we will buy a new phone costing about $650 each every 4 years, so that's $27 / month for upgrading phones. These have unlimited data, but after reaching a certain monthly cap (3GB in our case) the connection becomes slower.</p>
<p>If you are looking to get a phone in Japan, don't enter into a contract in any shiny sales office (DoCoMo, SoftBank, AU etc.). Besides being ludicrously expensive, you might find yourself locked into a 2-year contract which you are only allowed to cancel one specific month every 2 years. Instead buy your SIM online, or use a global eSIM that also works in Japan. </p>
<p>According to a friend (Tiago, the guy behind <a href="https://itunes.apple.com/us/app/tv-streams-watch-live-iptv/id1067566957">TV Streams</a>) who recently comparison shopped various eSIMs (HK, Ubigi and GigSky), the best was GigSky and the cheapest was Ubigi. There are now also Japanese competitors even cheaper than B-Mobile, so maybe comparison shop a bit. To buy a SIM from a Japanese low-cost provider, you'll need to upload your official ID and then get the card in the mail.</p>
<h2>Gas, electricity and water: $222 / month</h2>
<p>Even with our son in the house, these haven't gone up almost at all. </p>
<p><img alt="cost of electricity, gas and water in Japan" src="/static/gas_electricity_water_2019.png" /></p>
<h3>Gas: $105 / month</h3>
<p>Gas is for cooking, and for the water heater. I keep thinking if going all-electric wouldn't be cheaper, but we don't own the place and I doubt the difference would be big enough to bother anyway. </p>
<h3>Electricity: $93 / month</h3>
<p>Electricity is mostly for air conditioning, which means cooling in the summer and heating in the winter. Looks like heating costs a bit more.</p>
<h3>Water: $25 / month</h3>
<p>Looks like a sawtooth wave because it is billed every other month.</p>
<p>We are now filling a full bath tub to bathe our son each night, but that water can be reused as grey water for the washing machine, and is a negligible part of the overall bill in any case. The fee is also structured such that additional water usage doesn't affect it much. </p>
<h2>Rent: $750 / month</h2>
<p>For about 750 USD we are able to rent a decent 70 square meter / 750 square feet apartment. Rent here is much cheaper than it would be in Tokyo, where the same size &amp; quality place in the outskirts would be about +<a href="https://www.athome.co.jp/chintai/tokyo/map/list/?LAT=35.70738670555556&amp;LON=139.66380722777805&amp;CRN=nakano">$1000 more expensive</a>. In very central Tokyo such as Shibuya, possibly as much as +$3000 extra. </p>
<p>For our area this is actually a bit on the larger side of apartments on offer, based on browsing local listings. I spent a lot of time browsing all the possibilities, and so far this seems to be our best option. Below you can see what it looks like. </p>
<video muted playsinline style="width:100%" controls>
  <source src="/static/apartment_2019.mp4" type="video/mp4">
  <source src="/static/apartment_2019.ogg" type="video/ogg">
</video>

<p>Land in Tokushima is cheap, and we could also rent a small house for almost the same cost, but the difference didn't seem significant enough to bother moving, as it is shockingly expensive to move from place to place in Japan. You usually end up paying around 4 months rent, and possibly professional cleaning and moving fees. You also have to move your fridge, stove and air conditioning units to the new place.</p>
<p>If you don't mind living in a house built in the 70s, you could even buy one with land included for <a href="https://www.athome.co.jp/kodate/chuko/tokushima/list/">less than $40k</a>. More modern options tend to cost around $300k, but unlike much of the world, the value of the houses tend to go down over time, not up.</p>
<h2>Health insurance: $627 / month</h2>
<p>This would probably not apply to you if you came to Japan as an employee or as a student. But I am self-employed, so I need to cover my own healthcare. The exact formula for calculating this is <a href="http://japanhousesaitama.lawyerjapanese.com/saitama/page-914/">explained here</a>, but to simplify the yearly cost is roughly $500 per family member plus 10% of income. </p>
<p>This seems more like a tax, as it makes no sense to me that income should affect healthcare costs. After all, if you get sick, the real cost of drugs and doctors is just the same regardless of your earnings.</p>
<p><a href="https://doctorcatmd.com/"><img alt="" src="/static/its_terminal.png" /></a></p>
<p>While the insurance is expensive, doctor visits are not, typically costing about $10 a visit.  Even without appointment, you can also just pop in with almost no wait time. The doctor usually is not a cat.</p>
<h2>Food: $700 / month</h2>
<p>As we now have a new third member in our family that eats as much as we do, our food bill also went up by 50%. We eat out maybe once a week, if that.</p>
<p>$500 is our family food bill, additionally I included the ~$60 / month I spend on buying drinks from vending machines and about $140 / month for my lunch and for small snacks to enjoy while playing <a href="https://www.factorio.com/">Factorio</a> at night — just got the railroad and logistics network operational!</p>
<p><a href="/static/4902402815861_tongari_corn.jpg"><img alt="" src="/static/4902402815861_tongari_corn_300.jpg" /></a></p>
<h2>Car: $205 / month</h2>
<p>So we bought a new car. </p>
<p>Public transport is not great in Tokushima, making having a car a necessity.  We had a Suzuki Wagon R before, bought used and drove it ~6 years on top of that. </p>
<p>I'm not sure how many years we'll get out of the new Mazda Demio, let's say 8 years. I also included $50 / month for fuel here.</p>
<p>Old Suzuki Wagon R:</p>
<p><img alt="Suzuki Wagon R" src="http://www.bemmu.com/blogpics/suzuki_wagon_r.jpg" /></p>
<p>New Mazda Demio:</p>
<p><img alt="Mazda Demio" src="/static/mazda_demio.jpg?2" /></p>
<h2>Childcare costs: $560 / month</h2>
<p>The cost of day care is significant, about $500 / month, but now our son is old enough that the cost is soon going down to $300 / month. Additionally in October a new law is introduced in Japan where daycare <a href="https://www.japantimes.co.jp/news/2019/05/10/national/japan-enacts-legislation-making-preschool-education-free-effort-boost-low-fertility-rate/">is becoming free</a>.</p>
<p>Besides daycare, there are some misc. childcare related costs of about $60 / month.</p>
<h2>Online services: $23 / month</h2>
<p>Spotify: $6 / month</p>
<p>Netflix: $12 / month</p>
<p>Buying games on Steam: $5 / month</p>
<h2>Total: $3189 / month</h2>
<p>The total comes to $3189 / month, but you might notice I didn't include any travel costs, as those aren't strictly "living in Japan" -related fees.</p>
<p>We fly so that our son can spend time with his grandparents, meaning trips to Finland about once a year, and to Tokyo about three times. One trip to Finland from Japan costs about $3000, while the Tokyo trips are about $500. If you do include these, then the total becomes $3564 / month.</p>
<h2>Thanks for reading</h2>
<p>I hope this was interesting or helpful to you. Feel free to email <a href="mailto:me@bemmu.com">me@bemmu.com</a> or tweet at <a href="https://twitter.com/bemmu">@bemmu</a> if you'd like to ask anything.</p>
<p>Oh, and if you'd like to have me send you some Japanese candy to try (and help offset some of these costs), check out <a href="/">Candy Japan</a> as well.</p>
]]>
			</description>
		</item>

		<item>
			<pubDate>Tue, 26 Mar 2019 15:58:30 +0000</pubDate>
			<title>Previous A/B result invalid due to cookie bug</title>
			<link>http://www.candyjapan.com/previous-ab-test-results-invalidated</link>
			<guid>http://www.candyjapan.com/previous-ab-test-results-invalidated</guid>
			<description>
<![CDATA[
<p>In the <a href="https://www.candyjapan.com/behind-the-scenes/ab-testing-landing-page-template">previous post</a> I wrote about an A/B test where I compared a template bought from ThemeForest against one I created myself. The test ran for several months, and ended with ThemeForest being the winner.</p>
<p>After that post I was contacted by a developer called Max from Germany who told me that he had noticed there was something odd going on with how I was choosing whether to show the new ThemeForest template or my old hand-coded template. </p>
<h2>Cookie trouble: lpab</h2>
<p>Max correctly noticed that the <strong>lpab</strong> cookie determines which template to show. It would be set to "new" to show the new ThemeForest template, or to "old" to show the hand-coded template.</p>
<p>Or so it should be, but he told me that sometimes he would see this cookie set to "old" but would still be served the new template, and sometimes it would be "new" but he would still get the old template. Uh-oh. </p>
<p>His report sounded solid, and he had extensively tested that this was happening, but I was unable to reproduce it despite trying to clear the cookie dozens of times.</p>
<h2>Accomplice: session_id cookie</h2>
<p>Now I might have given up trying to track down the bug, but only minutes later Max gave me a critical hint: to reproduce the bug, it wasn't enough to just delete <strong>lpab,</strong> in addition another cookie called <strong>session_id</strong> also needed to be cleared. </p>
<p>That sounded really odd to me, as these two cookies were not related to each other at all. But when I tried to do as he instructed, lo and behold the A/B test pinning stopped working. I hadn't been able to reproduce it before, because I had only tried deleting the <strong>lpab</strong> cookie, while he had probably been deleting all cookies.</p>
<h2>Long-winded explanation of the cause</h2>
<p>Reading through the code, I was quickly able to find the issue.</p>
<p>(1) First, <strong>lpab</strong> cookie is set randomly to "new" or "old". Then template is served based on the result. No problem there.</p>
<p>(2) Next, if <strong>session_id</strong> doesn't exist, it is initialized and saved to a cookie. This would be fine too, except...
The way I saved the cookie was to directly alter the Set-Cookie header to a completely new value, erasing any cookies
set during the same response, including the cookie from (1).</p>
<p><img alt="" src="/static/have_a_cookie.jpg" /></p>
<p>In other words, (1) says "in the response, write header Set-Cookie such that lpab is set to 'old' or 'new' randomly".
(2) says "actually forget about lpab, overwrite Set-Cookie so it only sets session_id".</p>
<p>So <strong>lpab</strong> is never set because setting <strong>session_id</strong> immediately overwrites it. But in my tests I was always seeing
that <strong>lpab</strong> did end up getting some value, where was that coming from?</p>
<p>Well it just so happens that in an AJAX call that happens ~100ms later, the above is run again, this time <strong>lpab</strong> is 
not set, so it is set randomly to "new" or "old" again. But now <strong>session_id</strong> IS set, so this time it does not overwrite
the new <strong>lpab</strong> value.</p>
<p>So yes you end up having a random <strong>lpab</strong> cookie (yay), but it does not reflect the template that was actually shown (argh).
Often you will have a cookie that says "new", but you still get the old template or vice versa.</p>
<h2>Why would you even do that?</h2>
<p>Why I would set the Set-Cookie header in a way that overwrites everything else set before it?</p>
<p>I wrote the <strong>session_id</strong> part of the code ~6 years ago, with full intention to store everything in a Session object, so it
did not matter if I deleted all other cookies, as there should be no other ones if I just put everything in the Session.</p>
<p>However later on I forgot about this intention, and started putting things into separate cookies instead.</p>
<p>When using these separate cookies I was a bit smarter after having learned how to use my framework properly, such
that I was no longer overwriting other cookies set during the response. But the old <strong>session_id</strong> code was still there,
like a time bomb, just waiting for me to dare try to set cookies before session initialization. </p>
<p>What prevented me from noticing the issue was that it would only be apparent to new users with no cookies set. I am
decidedly not a new user, and while I did test my code by deleting cookies relating to any code I was working on at the
time, it didn't occur to me to test deleting all cookies.</p>
<h2>Conclusion</h2>
<p>This makes the previous A/B test result invalid. Worse yet, new visitors had often been served a different template on their first and second visit, which must have been quite confusing. On the positive side, it is great to know this (even if slightly embarrassing), as I can now re-run the test correctly. But it will take at least another 3 months to know the real result.</p>
<p><img alt="" src="https://www.candyjapan.com/static/cookie_public_domain.jpg" /></p>
<p>I ate a cookie while writing this post to make myself feel better. </p>
]]>
			</description>
		</item>

		<item>
			<pubDate>Fri, 15 Mar 2019 06:58:02 +0000</pubDate>
			<title>A/B testing original Candy Japan design vs. random template bought from ThemeForest</title>
			<link>http://www.candyjapan.com/ab-testing-landing-page-template</link>
			<guid>http://www.candyjapan.com/ab-testing-landing-page-template</guid>
			<description>
<![CDATA[
<p><strong>Update: this whole result is wrong. Full explanation here:</strong>
<a href="/behind-the-scenes/previous-ab-test-results-invalidated">Previous A/B result invalid due to cookie bug</a></p>
<hr />
<p>I run a Japanese candy subscription service called <a href="/">Candy Japan</a>, and periodically try to improve the landing page.
It's dark magic to me, as I don't really have a great feel of what convinces someone to subscribe. The best I can do 
is to try to imagine what might improve sales, then compare a change against the original to see if it really is resulting 
in more sales.</p>
<h2>Little data</h2>
<p>It would be most satisfying to do this one small tweak at a time, as then I could know exactly what change drove the
improvement, but with limited amounts of data this is rather hard to do. For example if you want to test a tweak that
results in 5% more conversions, you need about 3000 sales to detect it! For Candy Japan this would mean waiting for 
about 10 years for the test to complete.</p>
<p><img alt="" src="/static/interstellar_waited_years.png" /></p>
<p>Even if you never reach statistical significance, all things being equal it is still better to follow the result of 
the test. If you had to play one of two slot machines and someone told you that they played each one 30 times and
machine A paid out 10% more than machine B, would it not still be the best choice to choose machine A even if you 
can't be very confident about the result?</p>
<h2>Why test entire landing pages at a time?</h2>
<p>My mental model of the landing page is that every little element (and its position) on the page will have its own 
impact on sales. Most changes to these elements make very little difference, but some will have much bigger impacts.
Perhaps there are dozens of elements on the page that each have a small ±1% effect, then the occasional ±10% one.
If I picked an element at random and tested it, it would likely be one of those small effects. </p>
<p>But what if I just tweak everything and test that? The small effects would likely end up partially canceling each
other out, not resulting in a big effect. But I would likely also end up flipping those larger elements as well,
and with a bit of luck not in completely opposite directions. It's possible I could introduce one change that does a +10%
and at the same time another one that does -10%, roughly canceling each other out, but it seems it's still a better
test than picking just one element at random.</p>
<p><img alt="" src="/static/big_impact.jpg" /></p>
<p>If I pick an element at random I only have a small chance of hitting a significant change, but mixing everything up
I'm bound to change some big things as well. Besides
that the results would also be more exciting, as I mess both up the result would be disastrous, but if I happened
to improve both they would multiply each other, resulting in more than twice as big an impact.</p>
<h2>Test setup</h2>
<p>With this justification, I put in about 2 weeks of time to test a completely new landing page design. To get something
completely different, I bought a landing page template off of ThemeForest and customized it. That was a lot more work
than I thought it would be, as I discovered that trying to understand someone else's HTML and make it do what you want 
can be as much work as just writing it from scratch. </p>
<p><img alt="" src="/static/two_weeks.png" /></p>
<p>Besides changing the code, it also required new photo assets and copy that I did not have, so I had to sidetrack a bit
to create those as well. But finally I managed to customize it to be mostly as I wanted it to appear. To see the difference,
you can see the <a href="/static/candy_landing_page_a.png">old landing page here</a>, and <a href="/static/candy_landing_page_b.png">the new one here</a>.</p>
<p>Below you can see them side by side, but it's better to click through the links above to see each properly, as the pages are quite tall and narrow.</p>
<p><img alt="" src="/static/sidebyside.png" /></p>
<p>It would be confusing if you got a random landing page design every time you refreshed the page, so when a visitor came 
to the site, I would pin them to a randomly assigned landing page design, such that on subsequent visits they would be served 
that same design again. </p>
<h2>Results</h2>
<p>I personally thought the new design looked better, although I was not very confident about that. I hoped it would win,
because that would mean an increase in sales. On the other hand I wouldn't be too disappointed if it lost, since I preferred 
working with my old familiar HTML rather than the newly adopted one.</p>
<p><img alt="" src="/static/datalore.png" /></p>
<p>I let the test run for a bit over three months. During this time there were a total of 67 new subscriptions. Of these
<strong>58% (39) came from the new design and 42% (28) came from the old design.</strong> Looks like the new one is likely to
be an improvement. </p>
<p>I neglected to record how many views each version had, but should be at least 3000 since the conversion ratio is about 0.5 - 1%. I used <a href="http://www.abtestcalculator.com/">http://www.abtestcalculator.com/</a> and entered 3000 participants -&gt; 28 conversions and 3000 participants -&gt; 39 conversions.</p>
<p><img alt="" src="/static/abtestcalculator.png" /></p>
<blockquote>
<p>There is a 91% chance that Variation B has a higher conversion rate.
You can be confident that this result is a consequence of the changes you made and not a result of random chance.</p>
</blockquote>
<p>At first I took this to mean that the result was statistically significant, but <a href="https://news.ycombinator.com/item?id=19398491">many on Hacker News pointed that it probably is not</a>.</p>
<h2>Conclusion</h2>
<p>I'm pretty happy with the results, the test took longer to set up and run than I would have hoped, but it seems likely that this it increased conversions.</p>
<p><img alt="" src="/static/t2_smile.jpg" /></p>
<p>It seems that for a developer like me, customizing a ready-made template is at least as good a way to go as trying to design 
everything from scratch by yourself. It could be that the difference was just in the assets I had to create in order
to be able to use the new template, but in any case it pushed me to create a better landing page. </p>
<p>Thanks for reading. If you would like to receive surprise boxes of Japanese candy, you can <a href="/">subscribe here</a>. </p>
]]>
			</description>
		</item>

		<item>
			<pubDate>Mon, 21 Jan 2019 07:26:46 +0000</pubDate>
			<title>Results from a tiny SEO experiment</title>
			<link>http://www.candyjapan.com/tiny-seo-experiment</link>
			<guid>http://www.candyjapan.com/tiny-seo-experiment</guid>
			<description>
<![CDATA[
<style>
article img {
    box-shadow: 0 0 20px rgba(0,0,0,0.2);
margin-left: 0px;
}
</style>

<p><a href="/">Candy Japan</a> subscribers receive a twice-monthly newsletter that describes the contents of each candy box. Up to about a year ago, this content was never available anywhere except by email, and only to paying subscribers. </p>
<h2>Experiment</h2>
<p>Putting it online would mean I could link to it from social media, it could get indexed, and possibly bring some search traffic. While the content was never written for searches in mind and does not answer any particular questions users might enter in Google, there is a lot of information in the newsletters about specific candies that may not exist anywhere else in English, so the chance was non-zero that some people might be searching for them.</p>
<p>It was some effort to reformat them from Mailchimp to be suitable for the web, but they have now been available <a href="/past-boxes">here</a> since the end of 2017. </p>
<p><img alt="candy japan newsletter example" src="/static/newsletter_example.png" /></p>
<h2>Results</h2>
<p>Now with 2018 gone, there is one full year of data. So what happened? Lots of search traffic? Not really.</p>
<p><img alt="newsletter search traffic" src="/static/newsletter_search_traffic.png" /></p>
<p>That's right, 240 total clicks during one year from adding 102 pages of original content and photos. Google did actually index all of them, as all have some impressions appear in Google search console, although <a href="https://www.google.com/search?q=site%3Acandyjapan.com%2Fpast-boxes">only half appear in site: search</a>. </p>
<h2>Conclusion</h2>
<p>It wasn't useful to put the effort into trying to get this kind of newsletter content indexed. </p>
<p>Granted there was zero link building, apart from links to each from Facebook and Twitter every time a new one was published. Rearranging the content to answer specific questions would likely improve results. That way instead of a hundred posts about random arrangements of candy, they could be presented as 20 posts listing the best Japanese chocolates or other types of candy for example.</p>
<p>Despite being useless from a SEO point of view, for purposes of linking from social media and being able to show potential customers what to expect, continuing to put the newsletter online still seems like the right choice given it isn't that much effort to do.</p>
<p>Thank you for reading. If you were looking for any information not answered here, feel free to contact bemmu@candyjapan.com.</p>
]]>
			</description>
		</item>

		<item>
			<pubDate>Fri, 11 Jan 2019 03:16:25 +0000</pubDate>
			<title>Candy Japan 2018 Year in Review</title>
			<link>http://www.candyjapan.com/2018-year-in-review</link>
			<guid>http://www.candyjapan.com/2018-year-in-review</guid>
			<description>
<![CDATA[
<style>article img { margin: 0px; }</style>

<h1>Candy Japan 2018 Year in Review</h1>
<p><a href="/">Candy Japan</a> ships surprise boxes of Japanese candy twice a month to subscribers around the world. I moved to Japan and started the site in 2011, and it has been supporting my life here ever since. </p>
<p>At the end of each year I publish a post to reflect on how the past 12 months turned out. You can read the previous one <a href="https://www.candyjapan.com/behind-the-scenes/2017-year-in-review">here</a>, including more background on how the site got started.</p>
<h2>2018</h2>
<p>The service works on subscription basis. People sign up and pay monthly to receive candy. The chart below shows the number of subscribers over time. As you can see, this was another down year, during which I lost 16% of subscribers. The year started with 385 and ended with 323 paying subscribers.</p>
<p><img alt="Candy Japan 2018 chart" src="/static/2018-candy-japan-chart.svg" /></p>
<h3>Sales stats</h3>
<p>Sales net of refunds: ~$100,000</p>
<p>Expenses: ~$86,000 (candy 44%, shipping 34%, boxes 8%, ads 4%, other 10%)</p>
<p>Profit: ~$13,000 (down from $38,374 last year)</p>
<p><em>Big part of "other" expense is paying freelancers for newsletter writing, accounting, translation and customer support.</em></p>
<h2>Worth it?</h2>
<p>I would estimate spending around 3 hours per day this year running the service. The main tasks are finding and curating candies, shipping, customer support, content writing, tweaking marketing campaigns, doing bookkeeping (in three currencies), taking product photos and improving the website.</p>
<p>Hours spent: ~1000</p>
<p>Wage per hour: ~$16 </p>
<p>Hourly wage is down from ~$50 last year, as profit was less, but I spent more time trying to turn things around.</p>
<h3>Site stats</h3>
<p>Visits: 147,424</p>
<p>Unique visitors: 127,447</p>
<p>Page views: 231,651</p>
<p>Traffic sources: Search engines (28%), Social media (34%), Paid ads (5%)</p>
<h2>What went wrong</h2>
<h3>Shipping issues</h3>
<h4>Germany</h4>
<p>This year most of the packages sent to Germany started to bounce back with no clear explanation as to why, so I decided to stop shipping there. As 10% of customers were from Germany, this alone explains most of this year's decline.</p>
<h4>Sweden</h4>
<p>Swedish post apparently got tired of paying for last-mile delivery of cheap items from China, and <a href="https://www.postnord.se/en/receiving/collecting-mail/from-another-country/changes-march-1">decided to block that by introducing delays and fees to customers</a>. </p>
<p>Most countries have a "de minimis" rule when it comes to online shopping. If you order something very cheap from abroad, you'll pay no duties on it. Sweden also had this rule, but removed it this year. Now Swedish shoppers have to pay duties on everything, even if the tax is just 1 krona. There is also an "administrative fee" of ~8 USD added on top. In my case, Swedish customers are charged $8 for the pleasure of being able to pay a $4 duty. These fees combined cost almost as much as the subscription itself.</p>
<p>For some reason a single e-commerce platform is exempt from this: <a href="https://www.wish.com/tax_policy">Wish</a>. They have a special deal allowing VAT prepay, such that customers get their packages directly. I have emailed PostNord to ask how I could also do this, but was told that it is not possible.</p>
<p>I am still allowing new orders from Sweden, but have stopped advertising to Swedish customers. The packages do make it to their destinations in the end, but with significant cost and annoyance for customers there, leading to more cancellations.</p>
<h3>Failed at getting customers from YouTube unboxings</h3>
<p>As I wrote in <a href="https://www.candyjapan.com/behind-the-scenes/youtube-marketing-horror-story">"YouTube Marketing Horror Story"</a>, to promote the service I contacted 180 YouTubers to ask them to make an unboxing video. Many agreed, and I spent a lot of time shipping many sample boxes, but in the end the unboxing videos resulted in no new subscribers. </p>
<p><img alt="pile of candy sample boxes at Japanese post office" src="/static/pile_of_boxes_at_japan_post.jpg" /></p>
<p>The experiment cost about $1000 and was more work than I had expected. I knew the chances of success were very low. However if it had worked, the reward would have been high, as I could have expanded the promotion 10-100x. I figured I had a 10% chance to make $100k, so it was worth spending $1000 to give it a shot. </p>
<p>Unboxings <strong>DO</strong> work, as other companies keep pouring money into working with bigger channels, which I doubt they would continue to do month after month if it wasn't giving them a return. Just my particular approach of trying to work with tiny cosplay channels turned out not to work at all.</p>
<h3>SEO failures</h3>
<p>To get more content indexed by search engines, I put <a href="https://www.candyjapan.com/past-boxes">all of our old newsletters</a> on the site, but Google decided not to index many of them. The ones that did get indexed only sent 227 clicks, and resulted in no conversions. </p>
<p>I also tried making some of those annoying listicles such as "<a href="https://www.candyjapan.com/wow/japanese-chocolates">29 Mouth-Melting Japanese Chocolates</a>". Only one of them sent a conversion: "<a href="https://www.candyjapan.com/wow/8-international-candy-subscriptions-you-must-try-at-least-once">8 International Candy Subscriptions You Must Try At Least Once</a>". I'm sort of glad these didn't work, as they aren't much fun to write and they are way overdone already. </p>
<p><img alt="Japanese Limone chocolates" src="https://www.candyjapan.com/past-box-pics/80707c0d-701d-49ad-876f-b3b7cbe1b8a1.jpg" /></p>
<h2>What went right</h2>
<h3>SEO successes</h3>
<p>I noticed that some searches were not for a Japanese candy subscription, but rather just a one-time order.</p>
<p>I created an article explaining how to buy a gift card for yourself to get only one month's worth of candy, and other articles describing the service from different perspectives. These articles sent 6 conversions during the year, but should keep doing the same year after year with no extra cost, giving a nice return on the time spent writing them.   </p>
<p>The traffic has buying intent and the content is about the service itself—not about something tangential. This might be widely applicable to other businesses as well; can you describe your service from another point of view to capture more search traffic? </p>
<h3>Faster shipping</h3>
<p>I used to only batch ship twice a month, and while this worked well to keep costs in check, it also meant a long wait for the first package. The shipping days are 14th and 28th of each month, meaning that if someone happened to subscribe on 15th or 29th, there would be a two week wait before work on the batch would even start.</p>
<p>To improve on this, on top of the two monthly batches, when possible I made daily trips to the post office to airmail boxes right away to new subscribers that join. Many new members got their first boxes up to four times faster than before.</p>
<p><img alt="Candy box on top of mailbox" src="/static/20160214_900_compressed.jpg" /></p>
<h3>Package tracking</h3>
<p>Since I was already making trips to the post office, I figured I might as well use tracking for these first packages as well. While I cannot afford to track every single package (it costs $5 per shipment), when I am available to send the first package, I also pay to track it and wrote a little script that sends the customer the tracking code.</p>
<p>I would lose money if I always used tracking, but for a new customer's first shipment $5 seems like a worthwhile spend to build trust. </p>
<h3>Better customer support</h3>
<p>I started doing all customer support myself, and turned getting to inbox zero a daily habit. Average reply time is now less than 24 hours, and this way I should get a better feel for any preventable common issues. </p>
<p>I've tried asking anyone who cancels for a reason, but I haven't gotten much insight out of the responses. It might be better to ask on the website, as people might be more honest with a computer than when being questioned by the guy running the site.</p>
<h3>Cut costs by switching to Stripe</h3>
<p>I now save about $2000 / year by using Stripe subscriptions, instead of doing recurring charges through middleware and charging through a separate gateway.</p>
<p>When I started the site, I needed both a payment gateway and a recurring payments solution. I was paying about $2000 / year ($69/month + $0.10 cents per transaction + 1.25% of revenue) for middleware that did the recurring charging bit. On top of this I was also paying fees to the (non-Stripe) gateway I was using.</p>
<p>Later I switched to Stripe, which has built-in subscriptions, so the middleware was no longer necessary. I estimated that removing it would take about a week, but in reality the transition took me about 3 weeks to do (should have multiplied my estimate by π).</p>
<p>Waiting around for export &amp; import to finish, taking the steps to shut down the existing middleware gracefully, and making new signups go directly to Stripe. I didn't want to mess up the transition, so finally I carefully went  through all accounts to make sure that the transition worked properly. Finally when I thought I was done, I realized that I also had to create my own page for entering new card details when a card expires (middleware used to provide this).</p>
<p>I finally completed the change in June, and have enjoyed not receiving middleware bills ever since. </p>
<h3>Got better at YouTube ads</h3>
<p>As I wrote before in <a href="https://www.candyjapan.com/behind-the-scenes/what-i-learned-advertising-on-youtube">"What I Learned Burning $13,867 on YouTube Ads for Candy Japan"</a>, I've lost money with YouTube ads so far, and for a long time had the campaign paused. While it wasn't running, I still kept going through the data to see if I might be able to improve the campaign. </p>
<p>I was able to get conversions 33% cheaper by studying the failed campaign run and aggressively excluding anyone unlikely to convert. The little bump at the end of the subscriber chart is from trying out the new tweaked campaign. </p>
<p>I may have reached breakeven now, but the erratic nature of conversions (randomness is clumpy) and unknown quality of subscribers makes it difficult to be sure. I wouldn't be surprised if customers from YouTube tended to stick around for a shorter time than people actively looking for the site. I want to be a bit more careful this time, and so haven't gone all-in on the new campaign yet. </p>
<p><a href="https://www.youtube.com/watch?v=-0aY1GxvRMk"><img alt="" src="https://www.candyjapan.com/static/candy-flying-ad.png" /></a></p>
<p>One interesting thing I found is that if I cut the awkward "konnichiwa" from the beginning of <a href="https://www.youtube.com/watch?v=-0aY1GxvRMk">the ad</a>, people are almost twice as likely to watch it. As ads are paid based on view count, that might not be a good thing, but it's still interesting how such a little thing has such a big impact. For some reason YouTube prefers to show the uncut ad, and AdWords doesn't let you split-test video ads evenly, so I'm not sure which actually works better.</p>
<h2>Conclusion</h2>
<p>While Candy Japan is still a great side project, it is no longer enough to completely cover <a href="https://www.candyjapan.com/life-in-japan/what-it-costs-to-live-in-japan">my cost of living in Japan</a>. There still are many tweaks to make to the service that could improve it, so I doubt I'll be able to resist working on it, but I will also start spending more time launching completely new ideas as well.</p>
<p>Thanks for reading, and do <a href="https://www.candyjapan.com/">subscribe</a> if you'd like to try some candy for yourself. </p>
<p>PS. Visiting my home country Finland for Christmas gave me inspiration for the first thing to try. BBS-like realtime splitscreen chat: <a href="https://sysop.chat">https://sysop.chat</a> </p>
<p><img alt="" src="/static/map2.png" /></p>
]]>
			</description>
		</item>

		<item>
			<pubDate>Sat, 27 Oct 2018 06:13:22 +0000</pubDate>
			<title>Candy Japan YouTube marketing horror story</title>
			<link>http://www.candyjapan.com/youtube-marketing-horror-story</link>
			<guid>http://www.candyjapan.com/youtube-marketing-horror-story</guid>
			<description>
<![CDATA[
<script>
document.querySelector('h1').innerText = 'YouTube marketing horror story'
</script>

<p><link href="/static/horror.css?3" rel='stylesheet' type='text/css'>
<img src="/static/guro-box-logo.jpg" alt="scary halloween candy box"></p>
<p>Happy Halloween. Here are the results from a (not really that horrible) little marketing test: is it worth it asking tiny YouTube channels to make unboxing videos for you?</p>
<p>I run a site called <a href="/">Candy Japan</a>, which ships boxes of Japanese surprise candies to subscribers around the world, twice a month. I've been trying to find an approach to promote the site effectively through YouTube, as it seems great for reaching a lot of people looking for new things to try. Earlier I <a href="what-i-learned-advertising-on-youtube">tried YouTube ads</a>. When that didn't work, many commented that instead of burning money on ads, I should just send YouTubers free samples instead.</p>
<p>I had <a href="sales-results-from-getting-3-million-views-on-youtube">already done this before</a> with some YouTubers. One unboxing video ended up getting millions of views, but didn't result in any sales. I still believed that if I just tried different approaches, eventually something would work.</p>
<h2>Sending samples to a lot of tiny channels</h2>
<p>Here's what my thinking was for the current experiment. Huge channels may occasionally agree to feature Candy Japan, but it will be a bumpy ride with a small number of videos, some not working out at all. Doubling down on the ones that do work (if they exist) would be hard, as there are only so many big yet relevant YouTube channels out there.</p>
<p>On the other hand there are probably thousands (hundreds of thousands?) of channels out there in the 1-10k subscriber range. If each just brought in two customers on average, there are so many of them out there that scaling would be straightforward. I would get a stream of sweet sweet data to analyze, enabling me to improve the approach over time.</p>
<h2>Starting with a small-scale test</h2>
<h3>180 channels contacted</h3>
<p>Since I had no idea if this would work, I wanted to start small, but still big enough to learn something. I decided 180 would be a decent number of channels to contact. I could at the least get a good idea of the response rate, and maybe even run a split test.</p>
<p>I wanted to pick a category where I could easily find a lot of related channels, and one that might have an audience interested in Japan. I decided to go for cosplayers. I found websites where cosplayers were uploading their costume photos, and many users linked to their YouTube channels from their profiles. I wrote a quick Python script to find more of them and entered them into a spreadsheet.</p>
<p>I manually visited each channel to make sure I knew how to address the YouTuber properly by their name or the name of their team, and also to find out how to contact them. Finding contact information turned out to be quite time-consuming, as someone might only link to Tumblr from their channel, then Tumblr would link to their DeviantArt page, which might then finally have their contact information. At first each channel took me close to 10 minutes to go through, but after doing about a hundred I got good enough at this task that I could do each in 2 minutes.</p>
<h3>50 channels agreed</h3>
<p>After I had a large list of people to contact, I wasn't sure what to say in my email, so I wrote a bunch of different versions and tested them. To get someone to agree to an unboxing, the most important thing turned out to be not asking for their shipping address up front. Instead first explain the service briefly, then ask if they are interested to do receive a sample for a video. If they say yes, only then ask for the shipping address. Asking for the address in the initial mail seemed to be off-putting and resulted in less people agreeing. I <a href="ab-testing-contacting-youtubers">tested other things as well</a>, but that was the most impactful finding.</p>
<p>I guessed that around 10% would agree, but in the end 50 channels (28%) out of the 180 contacted agreed to make a video and gave me their shipping address.</p>
<h3>42 samples shipped</h3>
<p><img alt="" src="https://www.candyjapan.com/static/pile_of_boxes_at_japan_post.jpg" /></p>
<p>In the end I did not ship to everyone. Some responded so slowly that I considered the whole experiment over by the time I received their shipping address, for others I made mistakes, such as noticing their Facebook messages too late.</p>
<h3>33 boxes reached destination</h3>
<p>Not every box sent actually made it to the YouTuber. I also found that international package tracking often (24% of the time) does not actually work, so it was impossible to be sure exactly how many packages got delivered. I know for sure that 4 got returned back to me, and that at least 33 arrived.</p>
<p>On average it took 2 weeks for an airmailed package to be delivered, ranging from 4 to 42 days.</p>
<h3>17 videos made</h3>
<p>With the boxes delivered, I waited 2 months before tallying up how many people actually made a video. I also periodically nagged people to ask how their video was coming, and from the responses I felt this helped people to remember to do it. From getting the box, it took on average 20 days for a YouTuber to make a video. The fastest person made theirs in 1 day, slowest after 2 months. </p>
<p>You can <a href="https://www.youtube.com/playlist?list=PLXnSK9EMudUeGONOSeQNZMsSsBpb7n-_K">see all the videos here</a>.</p>
<p>Since only a fourth of people actually made a video, to get one video made I need to send 2.5 boxes. That more than doubles the cost of goods and shipping, meaning that the results from these videos would have to be very good for this to be scalable.</p>
<h2>Results</h2>
<p><img alt="" src="/static/zero_sales.png" /></p>
<p>The entire process of finding YouTubers to contact, figuring out how to contact them, having back-and-forth discussions with each to discover their shipping address and answering any questions they had, preparing and shipping the boxes, nagging people to make the videos, and finally compiling the results was very time-consuming. Because of delays in messaging, shipping and making the video, this is also a process that dragged on for about 3 months before it finally felt "done".</p>
<p>After videos had been out for about two months, I went to check their view counts. Each only averaged 166 views, for a grand total of 2826 views. This would have been OK if these small channels had such a devoted subscriber base that each would have resulted in a sale or two, but that did not happen. No noticeable change in traffic from YouTube, no uptick in sales, and no-one mentioned buying because of the channels (I ask everyone).</p>
<p>The hardest evidence is that not a single new customer claimed any of the 10% off coupons I gave to the YouTubers.</p>
<p>Buying all of the goods and shipping all the packages cost about $1000 in total. Buying the same number of YouTube ad views would have cost less than $10. On a CPM basis this was actually ten times more expensive than advertising on prime-time TV.</p>
<h2>Conclusion</h2>
<p>Considering the results, I am becoming pretty reluctant to send out free samples for unboxing videos. I would love to be proven wrong though, so if you run a decent sized channel that you believe could be a good match, do <a href="mailto:bemmu@candyjapan.com">drop me a line</a>. </p>
<p>If you'd like to try some Japanese candy for yourself, you can <a href="/">sign up here</a>.</p>
]]>
			</description>
		</item>

		<item>
			<pubDate>Thu, 20 Sep 2018 06:39:27 +0000</pubDate>
			<title>A/B testing how to ask YouTubers for product reviews</title>
			<link>http://www.candyjapan.com/ab-testing-contacting-youtubers</link>
			<guid>http://www.candyjapan.com/ab-testing-contacting-youtubers</guid>
			<description>
<![CDATA[
<p>I run Candy Japan, a service that mails surprise boxes of Japanese candy to subscribers around the world.</p>
<p>I previously wrote about an <a href="/behind-the-scenes/what-i-learned-advertising-on-youtube">experiment where I spent $13,867 on YouTube ads</a>. Many suggested that instead of spending money on ads, I should just send samples to YouTubers to get them to cover the service for free.</p>
<p>All right, I'll try it.</p>
<h2>Gathering a contact list</h2>
<p>Being new at this, I decided to start by contacting a larger number of small YouTube channels to learn what kind of an approach would work the best. </p>
<p>I assumed the response rate would be low, so I would need to find a lot of channels to contact. I wanted them to be relevant to people with a strong interest in Japan, and after several evenings of work managed to put together a list of several hundred small cosplay channels. At this point I only had their channel URL, but no way to contact them.</p>
<p>Many list their email address directly in their YouTube profile, while others only have a link to their Tumblr page for example. That page might then link to their other social media profiles, one of which might eventually have a way to contact them. Besides just finding an email address, I also wanted to find names. I read all channel descriptions and watched the beginning of video introductions to make sure I was addressing each recipient appropriately. </p>
<p>This was mind-numbing work that took me close to 10 minutes per channel initially. It's also distracting work in that I needed to spend a lot of time on YouTube and in various social networks without getting sidetracked. To be able to focus, I turned it into a little game for myself. How fast can I go through the next 20 channels? What can I do to improve my time? In the end I had improved enough that I was able to find the name and contact information for a channel in less than 2 minutes.</p>
<p>A little setback happened along the way: <a href="https://support.google.com/youtube/answer/57955?vid=0-997051002115-1537321334743">Google removed private messaging from YouTube</a>.</p>
<p>I had hoped to use YouTube private messages as a fallback for channels that don't list their email address anywhere. Just as I thought that I had gathered enough channels to contact, private messaging became impossible, and I had to redouble my efforts to make up for all the channels that had now become unreachable.</p>
<p>In the end I had a spreadsheet of 180 cosplay YouTubers with a way to contact each. The average channel in the list has less than 4000 subscribers, with a total of 664k subscribers – power law at play here, combined these roughly match a single popular YouTuber in impact. I wasn't sure if a tiny channel could send enough sales to exceed the cost of sending them a sample, but if it did, that would scale nicely as I could keep sending more and more samples to similar channels. </p>
<h3>A/B testing message content</h3>
<p>I decided to amuse myself with a little multivariate test and send everyone a slightly different message to learn what works best. </p>
<h4>Choosing a title</h4>
<p>I tried two different subject lines for the email, but the difference was minor. The worse one turned out to be <code>"Want a Japanese candy review box?"</code> and the slightly better one <code>"Free Candy Japan sample for unboxing video"</code>. Of the people who received the former, 25% agreed to do a review. Of the latter, 28.26%. </p>
<h4>Message body</h4>
<p>I started each message with:</p>
<blockquote>
<p>Dear so-and-so,</p>
<p>Would you like to receive a Japanese candy review box for your YouTube channel?</p>
</blockquote>
<p>I created five snippets of text, randomly including them in the messages I sent out. Below you can see each snippet, along with what the response rate was when each was absent or present. </p>
<p><strong>Snippet 1: clarifying what I want them to do</strong></p>
<blockquote>
<p>I was hoping that if I send you two boxes, you could unbox and try the candies and introduce the service to your subscribers.</p>
</blockquote>
<p>With the above snippet included, 29.55% agreed to do a review. Without it, 23.91% agreed. Takeaway: be clear about what you expect people to do for you.</p>
<p><strong>Snippet 2: longer self-introduction</strong></p>
<blockquote>
<p>I run a site called Candy Japan, which sends surprise boxes of Japanese sweets to members twice a month.</p>
</blockquote>
<p>With the above included 27.63% agreed, without 25.96% did. Takeaway: including an elevator pitch of your service may help.</p>
<p><strong>Snippet 3: appealing to popularity</strong></p>
<blockquote>
<p>These types of "trying Japanese candy" videos tend to be very popular, many having millions of views.</p>
</blockquote>
<p>With the above included 24.72% agreed, without 28.57% did. Takeaway: don't be patronizing?</p>
<p><strong>Snippet 4: offering their viewers a discount</strong></p>
<blockquote>
<p>I can also give your viewers a discount coupon.</p>
</blockquote>
<p>With the above included 27.38% agreed, without 26.04% did. Takeaway: it doesn't really matter if you offer a discount or not. In the end I still gave everyone a discount coupon anyway.</p>
<p><strong>Snippet 5: call-to-action</strong></p>
<blockquote>
<p>If you would like to receive a review box, please let me know your mailing address.</p>
</blockquote>
<p>This had the highest impact: with the above included 21.11% agreed, without 32.22% did. Note that even without this line, in the end everyone still gave me their mailing address, so this only means that it's better not to ask for it right away. </p>
<p>I can think of two reasons for this. Either people need a bit more back-and-forth before parting with such personal information, or possibly it's just more work to reply to this email, so more people will think "I'll reply later", and then forget about it.</p>
<p><strong>Include image or not?</strong></p>
<p><img alt="" src="http://www.candyjapan.com/static/candy_japan_october_2017.jpg" /></p>
<p>Another variation I tried was attaching the above image of the candy I might send them. I expected this to be a no-brainer in that having the picture would be better, but this actually turned out not to matter. Out of those who got the image 26.97% agreed vs. 26.37% for those who did not get it. </p>
<p>My guess here is that it may actually be beneficial to have the image, but that it is balanced out by more of these emails ending up classified as spam.</p>
<h2>Overall response rate</h2>
<p>I sent out 180 messages, and guessed that perhaps a dozen people would agree to do a review. In the end 48 YouTubers sent me their shipping address. Only 5 people outright refused to do a review, and even they still wrote polite responses. </p>
<p>Having 26.67% agree to do a review was a much higher rate than I had imagined, and I ended up annoying my wife by having a larger than expected pile of samples in our apartment. I was taking the samples to the post office by bicycle. Below you can see one batch that I was able to carry at once. For some reason it takes close to 30 minutes for the local post office to process each batch, the UI in their POS must be pretty terrible.</p>
<p><img alt="" src="/static/pile_of_boxes_at_japan_post.jpg" /></p>
<p>One wrong assumption I had was that more popular YouTubers would be harder to get to agree to do a review. Splitting my list of YouTubers evenly into "less popular" and "more popular" groups of less or more than 2290 subscribers, the agree rates were 27.78% and 25.56% respectively – a difference of only two more YouTubers agreeing in the less popular group.</p>
<h2>Thanks for reading</h2>
<p>It is a fair amount of work to find enough relevant YouTubers to contact, to correspond with them and to actually ship samples.</p>
<p>If you need to ship a YouTuber a physical product sample, don't ask for their address until after they have replied to the initial email. Include an elevator pitch of your service and be clear what you want them to do in the video.</p>
<p>With this approach when contacting relevant less popular YouTubers, you may expect around 30% of recipients to agree to do a review.</p>
<p>I have now sent out most sample boxes, but not everyone has made their videos yet. It will also take some time to know how popular the videos will turn out to be. I will do a part 2 later once I have data on how many sales these videos actually resulted in. Until then 👋</p>
<p>Oh, and if you'd like to try some Japanese candy for yourself, you can <a href="/">sign up here</a>.</p>
]]>
			</description>
		</item>

		<item>
			<pubDate>Wed, 12 Sep 2018 17:49:57 +0000</pubDate>
			<title>How did Candy Japan get its first subscribers?</title>
			<link>http://www.candyjapan.com/how-did-you-get-your-first-subscribers</link>
			<guid>http://www.candyjapan.com/how-did-you-get-your-first-subscribers</guid>
			<description>
<![CDATA[
<p>I recently got asked how Candy Japan found its first subscribers in the beginning, so I figured I'd blog my answer here as well.</p>
<p>Reaching potential customers might just be the single hardest thing in running a subscription box. My start might not be that helpful, as the world has changed from then and what worked then probably wouldn't work now, but here it is.</p>
<p>For the first two months or so I only had 2 customers. They were people I already knew from previous sites I had, who I asked by email if they'd like to subscribe. Specifically I had an online manga store with a few hundred customers who I could contact to tell them about this new service I was starting, and that's where those two people found about it from.</p>
<p>For what comes next it's useful to understand that there was no such concept as a "subscription box" back then. There were some monthly box services, but no trend existed of starting such services. Only one I can recall definitely existing back then was BirchBox, so the whole idea was still noteworthy.</p>
<p>After about 2 months of sending candy to just these 2 people, I posted about it on the startup link sharing site Hacker News, where I got very lucky in that the post happened to do very well and led to 100 new subscribers. It helped that it was a novel concept, I had already been an active member on the site for years, they generally like posts related to Japan and lastly... well just pure luck that the first few people who saw the post decided to upvote it before it dropped off the "new" page.</p>
<p>Some bloggers saw my post on Hacker News, and decided to write about it on their sites. I think it massively helped that the service was a new, interesting concept, making it a fresher story to write about. Since those sites were very focused on Japan and pretty popular, they sent a lot of good traffic.</p>
<p>Then, as a result from getting backlinks from those posts, I started ranking well on Google. In fact it rose to #1 for the search term "Japanese candy". I was winning by default, as there wasn't much competition for that term, and zero subscription boxes about it. While that great ranking was temporary, it did last for months and helped a great deal, as soon Japanese candy started to trend in general, and lots of people were searching for it.</p>
<p>So that's how after the first year I ended up with 300 subscribers.</p>
]]>
			</description>
		</item>

		<item>
			<pubDate>Thu, 26 Apr 2018 05:28:11 +0000</pubDate>
			<title>Credit card fraud warning signs</title>
			<link>http://www.candyjapan.com/fraudulent-transaction-warning-signs</link>
			<guid>http://www.candyjapan.com/fraudulent-transaction-warning-signs</guid>
			<description>
<![CDATA[
<p>I run a site called <a href="/">Candy Japan</a>, which ships boxes of Japanese surprise candies to subscribers around the world, twice a month.</p>
<p>At one point I was thrilled when I was suddenly seeing a lot of new orders coming in. But then, weeks later, I noticed a problem. A lot of these new orders turned out to be fake. Dealing with the chargebacks, I started wondering how I might have noticed such orders before accepting them.</p>
<p>I've written before about <a href="https://www.candyjapan.com/behind-the-scenes/candy-japan-hit-with-credit-card-fraud">getting hit by credit card fraud</a> and <a href="https://www.candyjapan.com/behind-the-scenes/how-i-got-credit-card-fraud-somewhat-under-control">how to make your store less attractive for fraudsters</a>. In this post I'll share some of the warning signs I've learned to pay attention to. These merely signal you to pay particularly close attention to an order – there can also be real orders that match some of these.</p>
<h2>Address is in the US... or is it?</h2>
<p>Some countries will have more fraudulent orders originating from them than others. Fraudsters also know that their country can raise suspicion, so sometimes they will enter their address otherwise correctly, but just change the country to "United States". </p>
<p>If you just casually browse your new orders, you might not notice this and accidentally ship the order. Later on when the post attempts to deliver it, they will at some point realize that the country is wrong and reroute it to the correct country -&gt; fraudster gets their package.</p>
<h2>Address is nonsensical</h2>
<p>Sometimes addresses just make no sense. For example the street address isn't within the ZIP code provided, or the address has huge parts of it missing. For example something along the lines of "Maple Street, 10001 New York".</p>
<p>In these cases the purpose of the order might not be to actually get the package, but rather just to check whether a stolen credit card number works or not.</p>
<h2>Using reshipping centers</h2>
<p>One time I received an order with other warning signs, but that had a valid US shipping address. I decided to look it up on street view.</p>
<p><img alt="Shipping trucks parked outside a reshipping center" src="/static/trucks.jpg" /></p>
<p>There were shipping trucks parked outside. Googling the address revealed this to be a reshipping center – a company that accepts packages inside the US and then ships them forward to other countries. There are perfectly valid reasons to use these companies, I've used them myself. For example you might have moved abroad, but still want to have an address in your home country. </p>
<p>Another reason would be that you might want to place an order with a store that doesn't do international shipping. However I do have international shipping, so there should be no reason to use a reshipping center. Unless of course you are trying to hide your actual location, which is a big warning sign. Nowadays I look up any suspicious order on street view, just to see if it might be a reshipping center.</p>
<h2>Using throwaway email addresses</h2>
<p>There are sites that offer disposable email addresses. You get limitless instant inboxes for any names you want, and can check them without having to register separately for each. Again there are good reasons to use these, for example for avoiding spam when you have to provide an email address for a site that demands it, but that you don't want to have your real email address.</p>
<p><a href="https://www.mailinator.com"><img alt="Mailinator landing page" src="/static/mailinator.png" /></a></p>
<p>Still I have found that if an order originates from one of these, it usually has other warning signs as well.</p>
<h2>Using an inconsistent and unlikely email address</h2>
<p>By "inconsistent" I mean that the first and last name implied by the email address does not match the name in the shipping address. By "unlikely" I mean one that no reasonable person would want to have, usually containing a big batch of numbers in it. An example that would be both inconsistent and unlikely would be john.smith.938924@gmail.com even while the name in the shipping address contains a totally different name.</p>
<p>Again not a sure sign, but this tends to be a feature of fraudulent orders. Often you just can't be quite sure and have to make a judgement call. One time when I tried googling for an address, I found that the person was also active on a forum for trading stolen credit card details. That was a bad sign. More often I will find a legit-looking personal blog which mentions their email address, that's great sign that it's a trustworthy subscriber.</p>
<h2>Thanks for reading</h2>
<p>Two bonus signs for the end. You can use a Geo IP database to check if the shipping address country differs from the IP address country. That's a weak sign (people do place orders while traveling, or to friends in other countries), but can break the tie if there is another suspicion. Another one is seeing if the order happened during a batch of other fraudulent orders. If you suddenly get 6 orders and 5 of them are fraud, and 1 you're not sure about, it's more likely to be fraudulent as well.</p>
<p>Thanks for reading. If you would like to try some candy yourself, you can <a href="/">sign up here</a>.</p>
]]>
			</description>
		</item>

		<item>
			<pubDate>Sun, 25 Feb 2018 17:21:04 +0000</pubDate>
			<title>What I Learned Burning $13,867 on YouTube Ads for Candy Japan</title>
			<link>http://www.candyjapan.com/what-i-learned-advertising-on-youtube</link>
			<guid>http://www.candyjapan.com/what-i-learned-advertising-on-youtube</guid>
			<description>
<![CDATA[
<p>YouTube allows you to pay to show an ad before a video plays. </p>
<p><a href="/">Candy Japan</a> is a service aimed at people with some interest in Japan, and there is an endless supply of videos aimed at the same audience. While the chances of success seemed low due to the high cost of advertising there, the promise of hitting a major new source of customers made it worth a shot.</p>
<p>Here's what I learned along the way from creating the video all the way to tweaking the ad campaign and finally looking at the results.</p>
<h2>Creating an ad for YouTube</h2>
<p>With AdWords you just need three lines of text, but to advertise on YouTube you need a video to show. </p>
<p>The major types of videos are screencasts, live action or an animation. Screencasts might work well if you were trying to sell an app or a game, but wasn't really applicable for my candy subscription service. </p>
<p>I considered a live video showing the candy boxes being delivered, or an animated explainer video. Since the people viewing my ad had a high likelihood of also liking anime, I figured an ad in a similar style might be a good match.</p>
<h3>Process &amp; cost of creating an animated ad</h3>
<p>I found some examples indicating that an animation would cost about $100 - $150 per second to make. Given that a typical YouTube ad is 30 seconds, you can see this gets expensive fast.</p>
<p>I found two options: either hire an animation studio, or work with a freelancer. Since I had already worked with an artist to create the manga illustration for the site, I asked him if he might be able to create an animation too.</p>
<p><img alt="" src="/static/mangaexplainer.png" /></p>
<p>Me and my wife came up with a quick storyboard, just using stick figures. I compiled them into a slideshow, wrote the voiceover dialog and mumbled it out while flipping the slides to create the timings.</p>
<p><img alt="candyjapan-stickfigure" src="/static/candyjapan-stickfigure.png" /></p>
<p>Based on our stick figure slides, the artist drew up keyframes. That moved things forward, as we could now discuss particular changes we wanted.</p>
<p><img alt="candyjapan-box-flying" src="/static/candyjapan-box-flying.png" /></p>
<p>Based on my mumblings I ordered a voiceover with a professional actress reading out the lines properly. The voiceover cost was about $100, which seemed relatively cheap now, as I was already paying about $3000 for the animation.</p>
<p>With rough sketches and a voice track timed to them, work could start to turn them into final animation assets.</p>
<p><a href="https://www.youtube.com/watch?v=-0aY1GxvRMk"><img alt="candy-flying-ad" src="/static/candy-flying-ad.png" /></a></p>
<p>The whole process from finding someone able to do this to actually having an uploadable video took 4 months. I imagine that going with a studio might have been a better choice, as the cost would have been similar but the turnaround time would likely have been much faster.</p>
<p>Here's the <a href="https://www.youtube.com/watch?v=-0aY1GxvRMk">end result</a>. </p>
<h2>You've got to spend money to spend money</h2>
<p>Now after spending a lot of money to create an ad, you can finally get started spending even more money showing the ad to people.</p>
<p>YouTube itself is used to upload the video. You can make it unlisted if you want. Then to get the ad to appear before videos (<em>"In-stream ad"</em>), you use AdWords to create a campaign. The YouTube video ID is used to link the AdWords ad with the video.</p>
<p><img alt="Editing a YouTube ad on AdWords" src="/static/adwords-youtube-ad.png" /></p>
<h3>How YouTube ads are priced</h3>
<p>Just like AdWords, the cost of an ad view is based on an auction between advertisers. However the auction is not based on clicks, but on views. To enter this auction the minimum bid is $0.01 per view, which might sound low, but isn't really.</p>
<p>Internet advertising is usually priced in terms of 1000 views, called the CPM rate. The low end starts at much less than a dollar, for example <a href="https://www.projectwonderful.com/advertisehere.php?id=70571&amp;type=3®ions=1,0,2,9,&amp;sumdata=1">advertising on Explain XKCD costs about $0.20 per 1000 views</a>. Mid range would be single digits, say <a href="https://www.buysellads.com/buy/detail/19392">$3 for showing an ad on Cult of Mac</a>. The upper range is low double digits, for instance <a href="https://www.buysellads.com/buy/detail/282603">a banner on bitcoin.com costs $30 per 1000 views</a>. </p>
<p>Translating the YouTube ads "per view" thinking into CPM: $0.01 per view would be $10 CPM. And this is just the <strong>minimum bid</strong> that it is possible to pay. Bidding this low probably wouldn't get you many views, and I found myself bidding much higher (equivalent to <a href="https://fitsmallbusiness.com/tv-advertising/">actual TV ad prices</a>) to get just enough views to determine whether my campaigns were working at all.</p>
<p>Now the good news: you don't have to pay if someone quickly skips your video! So if you manage to come up with an ad that is completely uninteresting to people outside of your target audience such that they skip it immediately, you don't have to pay for those views.</p>
<p>I found that 30% of people would actually watch our ad (70% skip). When you take into account that only 30% of people will watch the ad, a more accurate comparison with banner ads would be an interstitial ad with a $3 CPM minimum (1000 impressions * 30% view ad * $0.01). </p>
<p>Now you might understand why I want to get people not in my target audience to skip – it's cheaper because you don't pay when people skip your ad!</p>
<h2>Targeting options</h2>
<p>Compared to TV advertising, YouTube really shines with all the options you have for showing your ad to only your desired audience. The main targeting options are topics, placements and audiences. Topics and placements control which videos your ad is shown against, while audiences allow you to show ads based on who is viewing the ad.</p>
<h3>Topics</h3>
<p>It would be a huge pain to have to individually select thousands of videos to show your ad against. That's where topics come in, as they are pre-made groups of videos relating to a certain subject.</p>
<p>For example if you are trying to market a strategy game, you are in luck, because there is a topic just for that. </p>
<p><img alt="adwords-youtube-topics" src="/static/adwords-youtube-topics.png" /></p>
<h3>Placements</h3>
<p>With placements you can show your ad before a certain video, or before all the videos of your chosen YouTube channels.</p>
<p><img alt="adwords-placements" src="/static/adwords-placements.png" /></p>
<p>For instance if you were selling an app for creating bingo cards, you could find all the "how to make bingo cards"-type videos and show your ad before those.</p>
<p>Sadly in practice I found that it was difficult to get views this way, at least for any price I was willing to test. Even when listing thousands of videos, I wasn't able to get any meaningful amount of views for my ad. It could be that a lot of the videos I tried were either unpopular, had monetization disabled or my bids were just way too low.</p>
<h3>Audiences</h3>
<p>With audience matching Google tries to figure out what type of a person is viewing a video, and if that matches your selection then your ad can be shown.</p>
<p>There are a lot of options here. You can target investors, cooking enthusiasts, people into DIY, pet lovers, gamers and more.</p>
<p><img alt="adwords-audiences" src="/static/adwords-audiences.png" /></p>
<p>Audience matching finally gave me enough clicks to find out whether anyone ever buys anything through YouTube ads. </p>
<h3>Keywords</h3>
<p>In the beginning I said there are topics, placements and audiences, but actually there is another targeting method. One where I still have no idea how it is supposed to work: keywords.</p>
<p>I assumed to trigger a keyword match, the video title or description would have to match it. This turned out not to be the case.</p>
<p>For example when I tried the keyword "anime", my ad got shown before these videos: <a href="https://www.youtube.com/watch?v=3jf66b9VQ8c">some Lithuanian song</a>, <a href="https://www.youtube.com/watch?v=qBqEFwhdoo8">a tutorial on how to make gnomes</a> and <a href="https://www.youtube.com/watch?v=86f3332Kp2w">some german rap video</a>. Not exactly anime.</p>
<p><img alt="" src="/static/gnomesbro.png" /></p>
<p><em>"Keywords can trigger your ad to show when people view related content on YouTube, websites or apps".</em></p>
<p>Apparently this "related content" is defined more broadly than I had assumed. </p>
<h2>I know what video you saw last summer</h2>
<p>Oh yeah, I wanted to mention a cool tracking thing YouTube provides. As you might assume, you can easily track when a click on the ad results in a sale. But the cool part is that you can also track when someone views your ad, and then a bit later types in your web address to make the purchase without ever clicking the link.</p>
<p>In other words you can track both people who click through an ad directly, or who see your ad and then visit your site a bit later (this is known as a "<em>view-through conversion</em>"). It's magic. Magical enough that you'll have to take Google's word on it that these customers actually did view the ad, since you won't be able to detect it yourself.</p>
<p>Besides purely trusting the reports given to me, I also added a field to my order form where I asked people "where did you hear about Candy Japan?". This confirmed that YouTube really was sending these new customers.</p>
<h2>Tweaking the campaign: exclude!</h2>
<p>AdWords gives you a lot of interesting data about which of your targeting options converted and which did not. Looking carefully at the data AdWords gave me, I did find a few simple ways for lowering the cost of a sale. </p>
<p>The key realization here is that advertising is as much about showing your ad to people, as it is about NOT showing it to those less likely to buy. An easy start is to just stop all topics or audiences that don't seem to be working.</p>
<p>If that still doesn't make your campaign profitable, there are broader exclusions and bid adjustments you can make based on age, gender, device, location, parental status and household income. For instance you might find that people in certain locations or age groups are less likely to buy than others.</p>
<p>With these adjustments I was able to significantly lower the cost per conversion for the campaign. </p>
<h2>In conclusion, did you break even?</h2>
<p>Nope. I lost money.</p>
<p>Many viewers did place an order after seeing the ad, but not enough to justify continuing the campaign. This was true even taking into account the full lifetime value of a customer. While I was not able to make the campaign break even, by tweaking the targeting options I was able to get pretty close.</p>
<p>For now I have stopped the campaign and will reflect a bit on what went wrong before possibly trying again.</p>
<p>As advice for someone else who wants to try advertising on YouTube, I'd say your product or service should make at least tens of dollars in profit to have a shot at making the numbers work. Advertising an app with a flat cost of only a few dollars would be unlikely to work even at the lowest bid levels. </p>
<p>If you do have a suitable product, be prepared to spend thousands while you tweak your campaign towards profitability.</p>
<p>Thanks for reading. If you would like to try some candy yourself, you can <a href="/">sign up here</a>.</p>
]]>
			</description>
		</item>

		<item>
			<pubDate>Tue, 26 Dec 2017 17:37:47 +0000</pubDate>
			<title>Candy Japan 2017 Year in Review</title>
			<link>http://www.candyjapan.com/2017-year-in-review</link>
			<guid>http://www.candyjapan.com/2017-year-in-review</guid>
			<description>
<![CDATA[
<h1>Candy Japan 2017 Year in Review</h1>
<p>Hello internets, Bemmu here. </p>
<p>I run a site called <a href="https://www.candyjapan.com/">Candy Japan</a>, which ships boxes of Japanese surprise candies to subscribers around the world, twice a month. </p>
<p>Five years ago I started writing these annual review posts after being inspired by <a href="http://www.kalzumeus.com/2011/12/21/bingo-card-creator-etc-year-in-review-2011/">patio11's year in review posts</a>. They are a great way to reflect on each year, and inspire me to improve. In this one I'll start off with some background for those who haven't been following the <a href="https://www.candyjapan.com/behind-the-scenes">previous ones</a> and then proceed to the numbers for this year.</p>
<h2>My background</h2>
<p>As a computer science student in Finland I had a lot of side projects, with some of them generating some income as well. Learning Japanese has always been a major life goal for me. My minor subject was Japanese, and as part of my studies I spent 2 years as an exchange student in Tokyo. I was still eager to continue to improve, and wanted to live in Japan again. </p>
<p>After graduating and having saved up some money, in 2011 I decided to make it happen and moved to Japan with my wife. She is from Japan, and I first met her when she was an exchange student at my university. We settled in Tokushima, which is a smallish city (by Japanese standards) in Shikoku island. The reason for picking Tokushima was the company she entered after graduating.</p>
<p>Even though I had no job waiting for me in Tokushima, I could follow along as some online projects I had started in Finland were still generating revenue. Pretty soon however they started to dry up, so I had to come up with something new.</p>
<h2>Starting Candy Japan</h2>
<p>Starting to look for a new project, I recalled bouncing around some ideas with a friend while we had been on a holiday together. I had mentioned to him this website I had heard of called <a href="https://en.wikipedia.org/wiki/Birchbox#History">BirchBox</a>, a service that sends people makeup samples on a monthly basis. I thought it was an interesting model – a subscription not for software, but for surprises.</p>
<p>Is there anything we could send like that? Maybe introduce items from around Asia.</p>
<p>Since we were both busy with other projects at the time, we didn't end up doing any of the ideas we had bounced around. But now that I found myself in Japan with free time to start something new, I decided to try it. </p>
<p>With my wife's work locking her here in Tokushima, I didn't want to start traveling around the world to hunt for items, so I decided to find something I could just send from Japan instead. Anything would be fine at first, I could always expand later (<em>never did though</em>). What would be easy to try to send? I saw a lot of unique candies here, and looking into it I discovered that they were also <a href="https://www.youtube.com/watch?v=_T2_80viWps">trending on YouTube</a>. So candy it was. </p>
<p>While I was an exchange student I had a side income from selling comic books (by using the university post office no less) from Japan to Finland, so I emailed those past customers to see if they would be interested in subscribing to candy. Two people agreed, so I started sending stuff to them. </p>
<p>Next I put up a simple website. At first it was just a landing page, but over time as it grew, I <a href="https://www.candyjapan.com/behind-the-scenes/how-many-lines-of-code-is-candy-japan">wrote a bunch of code</a> to automate things (no readymade solution existed back then). I submitted the website to Hacker News, where some bloggers spotted it and posted about it. Other bloggers saw those posts and reblogged it. This in turn caused the site to rank #1 in Google for the head term "Japanese candy", sending even more visitors to the site.</p>
<h2>Story up to 2016</h2>
<p>The Hacker News post, blog mentions and Google rankings combined to mean that by the end of 2011 a total of 300 people had become subscribers. It turned out to be a stable number that lasted all the way to 2014. It wasn't just that people were subscribing for that long, but also new subscriptions were roughly matching the number of cancellations to keep the subscriber count stable.</p>
<p>Here's a chart showing the number of members subscribing to Candy Japan:</p>
<p><img alt="" src="https://www.candyjapan.com/static/2016_chart_real.png" /></p>
<p>You might notice that in 2014 something wonderful happened: the subscriber count roughly tripled. I didn't do anything clever to make that happen, rather I got lifted by a wave as the whole concept of Japanese candy started to trend. </p>
<p>Below is a chart from Google Trends showing how many people were searching for japanese candy:</p>
<p><img alt="" src="/static/candy_google_trends.png" /></p>
<p>As you can see the number of searches slowly builds, but from 2014 to 2015 it rapidly doubles, making it about three times as much as it had been in the early days. This was directly reflected in our subscriber count. </p>
<p>By no means was this still a big business, but Candy Japan alone could now cover <a href="https://www.candyjapan.com/life-in-japan/what-it-costs-to-live-in-japan">our living expenses</a>, and I started to get hopeful that it could get bigger still.</p>
<p>Next year in 2015 it seemed that my hopes were coming true; the subscriber count crossed 1200. Or so I thought. What seemed to be the best year ever turned out to be miserable: I discovered that I had been <a href="http://www.candyjapan.com/candy-japan-hit-with-credit-card-fraud">hit by credit card fraud</a>. All those new subscribers beyond the first 800 were actually fakes who had subscribed with stolen credit card numbers.</p>
<p>I had already sent them the items, but now had to return all the money and on top of that pay a bunch of fees. Add insult to injury a lot of shipping addresses turned out to be fake as well, so I had hundreds of boxes returned to my address. Our mailbox was constantly swamped and our apartment was littered with returned boxes I had to manually examine to see if they were from legit subscribers or fakes. </p>
<p>While this fraud issue was going on, I was also in the process of moving my tax residency to Japan. It was a stressful year spent dealing with fraud and taxes. I even got a phone call from a US police officer after someone had complained to them about an unknown charge on their card, because their number had been stolen and someone used it to place a candy order.</p>
<p>Fraud is something that affects any business that accepts credit cards, <a href="http://blog.watsi.org/donation-fraud/">even charities</a>. Even if everything seems to be OK, make a habit of reading through new orders as they come in. Pay attention to email addresses, shipping addresses and bursts of failed payments. You can spot suspicious behavior if you do this.</p>
<p>I thought I didn't have a problem, until thousands of dollars started getting reversed. While I did know that a small percentage of all ecommerce is fraud, I always understood that as fraud being interlaced with legit orders. 100 real payments, 1 fake payment, 100 real payments, 1 fake payment. But that's not how it played out. Rather it was 10000 real payments over years lulling you into believing that everything is fine, then suddenly getting hit by hundreds of fake payments in a matter of days.</p>
<p>If 2015 was a high-anxiety year, 2016 was rather quiet by comparison. Subscriber numbers did continue to slide, as <a href="https://www.candyjapan.com/behind-the-scenes/nobodys-going-to-steal-your-idea">competition was getting tough</a> while also the overall interest in Japanese candy was waning. I ran some marketing experiments, but was unable to find any good channels.</p>
<h2>2017</h2>
<p>This year was a bloodbath. From the start of 2017 to the end, subscribers declined by 40%, going from 636 to 385 members.</p>
<p>Here's the subscriber chart extended to include 2017:</p>
<p><img alt="" src="/static/2017-subscriber-chart.png" /></p>
<h3>Sales stats</h3>
<p>Sales net of refunds: $141,220</p>
<p>Expenses: $102,846 (candy, shipping, boxes, ads)</p>
<p>Profit: $38,374</p>
<p>Wage per hour (assuming ~2 hours per day): ~$50</p>
<h3>Site stats</h3>
<p>Visits: 138k</p>
<p>Unique visitors: 114k</p>
<p>Page views: 241k</p>
<p>Traffic sources of note: Search engines (30%), Social media (22%), Paid ads (13%)</p>
<h3>What went wrong?</h3>
<p>This year I didn't have as much to blog about. In 2016 I had five popular posts (<a href="https://www.candyjapan.com/behind-the-scenes/how-i-got-credit-card-fraud-somewhat-under-control">1</a> <a href="https://www.candyjapan.com/behind-the-scenes/results-from-box-design-ab-test">2</a> <a href="https://www.candyjapan.com/life-in-japan/%E5%8F%A3">3</a> <a href="https://www.candyjapan.com/behind-the-scenes/how-many-lines-of-code-is-candy-japan">4</a> <a href="https://www.candyjapan.com/behind-the-scenes/algorithmic-fitting-of-japanese-candy">5</a>), while in 2017 I only managed two (<a href="https://www.candyjapan.com/behind-the-scenes/sales-cross-million-dollars">1</a> <a href="https://www.candyjapan.com/behind-the-scenes/twice-as-happy-half-the-price">2</a>). The posts tend to send a lot of high-quality traffic, so the impact was bigger than you might expect. I haven't figured out how to invent posts from thin air when I simply have nothing new to share.</p>
<p>Organic search traffic declined from 68,383 clicks in 2016 to 41,358 clicks in 2017. I think the reason for this is twofold. First, competition is getting tougher, meaning there is fierce competition for head search terms. I have been pushed off the first page completely for some.</p>
<p>Secondly overall searches for Japanese candy declined by 33% according to Google Trends, while on YouTube it more than halved. There was a point when a lot of YouTubers were doing a video showing their reactions to eating strange Japanese candy, but now that is ancient history.</p>
<p>Changes in USDJPY exchange rates made me decide to increase USD prices. Naturally a higher price leads to less conversions.</p>
<p>Another major hit was that all the packages we were sending to Germany started bouncing back. After this continued for several shipments, I decided just not to ship to Germany any more. This meant losing 10% of subscribers and needing to send a lot of refunds for packages that never arrived.</p>
<h3>Things I tried</h3>
<p>Tried paid YouTube ads, and while I did get some subscribers, in the end they were just too expensive to keep running. Tweaking the ads was very time consuming and expensive (but fun). I learned a lot though and <a href="https://www.youtube.com/watch?v=hs30WPkRpsY">gave a presentation about it</a> at a Hacker News meetup in Osaka. I managed to decrease their cost, but not enough to break even.</p>
<p>Tried putting <a href="https://www.candyjapan.com/past-boxes">all of our old newsletters</a> on the site. Had to reformat them by hand from ill-defined HTML newsletters to MarkDown. Attempts at automating with BeautifulSoup failed, as there was no coherent layout. I submitted them to webmaster tools, but this resulted in… silence. Less than one organic search click per day.</p>
<p><img alt="" src="/static/webmaster-tools-click-stats.png" /></p>
<p>Improved response time by serving the landing page from a static file served by Google CDN instead of from Python. This may increase conversions slightly and could improve SEO, but there is still a lot of work to do to make the site faster.</p>
<p>Tried to branch out by asking my customers if they would like to subscribe to Gashapon capsule toys, but the result was near-silence. I have a bimonthly newsletter with a great open rate, I wonder what other ideas I could throw at them?</p>
<p>Tried redesigning the site to be more colorful and not so gloomy, but am not sure if it helped or hurt. I don't have enough data anymore to say for sure, as you need hundreds of conversions to say anything meaningful. </p>
<p>Tried to learn how to take better product photos for putting on the site to match what my competitors are doing, but was unable to take decent shots by myself. In the end hired a photographer to do it. </p>
<p><img alt="" src="https://www.candyjapan.com/static/candy_japan_october_2017.jpg" /></p>
<p>The pictures look good, and will probably boost conversions a bit. Again I can't be sure of the impact due to lack of data. Who knows, maybe visitors might feel that seeing the products ruins the surprise or something.</p>
<h2>Conclusion</h2>
<p>I wish I could report having discovered some kind of a breakthrough marketing trick to reverse the decline, but sadly no. </p>
<p>For the time being <a href="/">Candy Japan</a> is still popular enough to keep running, and since I have most things automated I see no reason to shut it down. If the trends of declining popularity of Japanese candy and increasing competition continue, 2018 will be another down year.</p>
<p>I will start spending more time trying new projects again. Hopefully nothing involving physical products this time!</p>
<p>Thanks for reading, and do <a href="/">subscribe</a> if you'd like to try some candy for yourself. You can use the code HACKERNEWS to get 10% off.</p>
<p><a href="/"><img alt="" src="/static/illustration-4.jpg" /></a></p>
]]>
			</description>
		</item>

		<item>
			<pubDate>Fri, 23 Jun 2017 06:41:08 +0000</pubDate>
			<title>Twice as happy customers = half the marketing spend</title>
			<link>http://www.candyjapan.com/twice-as-happy-half-the-price</link>
			<guid>http://www.candyjapan.com/twice-as-happy-half-the-price</guid>
			<description>
<![CDATA[
<h2>Subscriber math on the beach</h2>
<p>I run <a href="/">Candy Japan</a>, which ships surprise sweets to subscribers. It isn't a store that ships individual orders. Instead you sign up to become a member and pay monthly. You receive surprise boxes until you cancel.</p>
<p>And people do eventually cancel. </p>
<p>What I wanted to know was: </p>
<p><em>"How many people would need to join each month to sustain 1000 subscribers?"</em></p>
<p>When I started thinking about all this I was on a beach in rural Japan in a hammock. No computer or even a phone with me.</p>
<h2>Simple example</h2>
<p>For simplicity suppose 50% of people cancel every month. That means that if I do some clever marketing and manage to get 100 new people to join, then after a month 50 of those would be left. After another month, 25 of those would be left and so on.</p>
<p>Because of this fall-off, even if you run a subscription business forever, you will not have infinite customers. Instead you reach a steady-state number.</p>
<h2>42 ?</h2>
<p>In a given month, you will have the new members that you managed to bring in through the door that month. But you will also have people remaining from the previous months.</p>
<p>Continuing with the previous example of 100 new members coming in through the door each month and 50% canceling each month, you'll have 100 + 50 + 25 + ... = 200 members each month. Even if you run the business for a million years, you will still only have 200 members.</p>
<p>The two things you can improve are either bringing in more people, or making cancellations less likely.</p>
<h2>Stand back, I know Python</h2>
<p>I quickly bicycled home to see what the answer would be, accidentally spreading sand from the beach all over the floor rushing to my computer too quickly.</p>
<p><a href="https://xkcd.com/208/"><img alt="" src="/static/xkcd-stand-back.png" /></a></p>
<p>I fired up Python and first checked the previous result.</p>
<pre><code>def subscribers(new_members, retention):
    n, x = new_members, retention

    # n + n * x + n * x^2 + n * x^3 ...
    return sum([n*x**p for p in range(0, 10**5)])

print subscribers(100, 0.5)
# Yay it prints out "200"
</code></pre>
<p>Happily it agreed with my "beach guess" that 100 + 50 + 25 … would equal 200.</p>
<h2>Playing with different values</h2>
<p>Trying out different values, I found that with a monthly cancel rate of 50% you need 500 new members each month to sustain 1000 subscribers.</p>
<p>How the member count improves as cancel rate goes down is surprisingly steep.</p>
<p>If you can get the cancel rate to 25%, with just as many people joining each month, the member count doubles to 2000 subscribers.</p>
<p>Get the cancel rate to 12.5% and now you have 4000 subscribers.</p>
<h2>Conclusion</h2>
<p>Every time your cancel rate halves, your member count doubles. </p>
<p>What I hope you take away from this, besides beaches being the best thing about living seaside in rural Japan, is this:</p>
<p><strong>Make your customers twice as happy, and you can get away with spending only half as much on marketing.</strong></p>
]]>
			</description>
		</item>

		<item>
			<pubDate>Thu, 22 Jun 2017 12:41:16 +0000</pubDate>
			<title>Price comparison of Shopify recurring payment solutions</title>
			<link>http://www.candyjapan.com/extending-shopify-to-support-a-subscription-box</link>
			<guid>http://www.candyjapan.com/extending-shopify-to-support-a-subscription-box</guid>
			<description>
<![CDATA[
<p><a href="http://www.shopify.com">Shopify</a> is a shopping cart system <a href="http://www.theglobeandmail.com/report-on-business/rob-magazine/meet-our-ceo-of-the-year/article21734931/">originally created to run a single snowboarding shop</a>. Later others could also use it to set up their own online stores, and has since grown to handling multiple stores totalling over $8 billion in sales. </p>
<h2>Subscription plugins</h2>
<p>By default Shopify does not support recurring payments, but it can be extended to do that by using apps. In this article my aim is to make your life a bit easier by giving you a quick listing of all the major apps out there, along with their prices.</p>
<p>My motivation for searching for subscription apps is finding the perfect solution for my own business, <a href="https://www.candyjapan.com">Candy Japan</a>. I use a homegrown system, because there wasn't really anything good available at the time I started the site. I'm always open to transitioning to a better solution, and want to keep up to date on the solutions available.</p>
<p>The base fee for the the Shopify ecommerce system is $29 / month. On top of this you need to pay credit card fees, which are 2.9% of revenue + $0.30 per sale if you use Shopify's own gateway. Using other gateways comes with extra costs.</p>
<h2>ReCharge</h2>
<p>There also exists an app called <a href="https://apps.shopify.com/shopify-recurring-payments">ReCharge</a>, which is designed to be used both as a "subscribe &amp; save" -type feature similar to Amazon or as the engine for subscription boxes. The <a href="https://www.youtube.com/watch?v=eNm1s_vU8N0">introduction video on their app page</a> is excellent, I recommend checking it out. </p>
<p>ReCharge is $19.99 / month + 1% per transaction for up to 500 subscribers, with a negotiable discount if you have a larger customer base. The first three months are free.</p>
<p><img alt="" src="/static/recharge_pricing.png" /></p>
<p>With ReCharge all recurring subscriptions appear as new orders within Shopify, with special new interfaces for managing them both for you and your customer. You can change the subscriptions and update credit cards etc. through the interface which ReCharge adds to your Shopify. It also sends notification emails (welcome email, charge failed and charge succeeded) to your customers automatically. ReCharge supports monthly and other frequencies.</p>
<p>ReCharge has also recently launched an API.</p>
<p><em>"With the <a href="http://rechargepayments.com/api">ReCharge API</a>, you can now solve your complex subscription needs. From tailoring your customer portal to creating custom workflows, you can now build off the ReCharge platform to fully customize your store."</em></p>
<h2>Chargify</h2>
<p>One of the recurring payment apps is <a href="https://www.chargify.com/blog/improved-chargify-shopify-integration/">Chargify</a>. By combining Shopify and Chargify, you have a system suitable for running a subscription box. They charge 1.2% of your revenue, with a minimum charge of $149 / month. There is an advanced plan as well, offering some extra features at a cost of 1.2% of revenue + $299.</p>
<p><img alt="" src="/static/chargify_pricing.png" /></p>
<p>Extra discounts apply if you have over $250k / month in sales.</p>
<h2>Bold Recurring Orders and Subscriptions</h2>
<p>$19.99 / month + 1% of recurring revenue. Free 3-month trial. If your subscription box really takes off, for very high volumes the percentage fee can be reduced. You can find <a href="https://apps.shopify.com/recurring-orders">Bold subscriptions in the Shopify app store</a> or on <a href="https://boldcommerce.com/subscriptions/">their own homepage</a>.</p>
<p><img alt="" src="/static/bold_subscriptions_pricing.png" /></p>
<h2>PayWhirl</h2>
<p>Another option for adding a subscription layer to Shopify is PayWhirl. It has three tiers, all with varying fixed and percentage fees.</p>
<p><img alt="" src="/static/paywhirl_pricing.png" /></p>
<p>In addition to these, there is now also a "free" plan which charges no monthly fees, but takes 3% of revenue.</p>
<p>I did the math for you. </p>
<p>If you process less than $4,900 per month, choose the "Free" plan. 
After that stick with the "Business Pro" plan until your revenue hits $10,000. 
Beyond that go for the "Business Plus" plan, until at $20,000 finally switch to "business ultimate".</p>
<p>You can find <a href="https://apps.shopify.com/paywhirl-recurring-payments">PayWhirl in the Shopify app directory</a> or on <a href="http://www.paywhirl.com">PayWhirl’s own site</a>. Besides Shopify, PayWhirl can also be used in other contexts, <a href="http://blog.paywhirl.com/blog/post/how-sockscapade-uses-paywhirl-to-power-their-online-monthly-sock-subscription-business">such as with SquareSpace</a>.</p>
<!--

## ChargeBee

The options don't stop there. Another subscriptions app which works with Shopify is [ChargeBee](https://apps.shopify.com/chargebee-recurring-billing?ref=shopstorm), priced in tiers based on how many monthly invoices you have. The price is $99 / month for 200 invoices, with an extra charge of $0.50 per invoice for any invoices going over that limit. 

There are also pro and enterprise versions available, offering more features.

![](/static/chargebee_pricing.png)

-->

<h2>Thanks for reading</h2>
<p>Which solution did I pick for my own Japanese candy subscription box <a href="/">Candy Japan</a>? None of the above! I went with a custom solution, because at the time I founded the site none of these existed. If you found this useful and happen to like candy, please do <a href="/">subscribe</a>.</p>
]]>
			</description>
		</item>

		<item>
			<pubDate>Mon, 05 Jun 2017 09:59:32 +0000</pubDate>
			<title>Setting Your Kanji Study Goal</title>
			<link>http://www.candyjapan.com/setting-your-kanji-study-goal</link>
			<guid>http://www.candyjapan.com/setting-your-kanji-study-goal</guid>
			<description>
<![CDATA[
<p><small>
<em>Text: <a href="http://www.bemmu.com">Bemmu Sepponen</a>, Illustration: <a href="http://artem-olegovich.deviantart.com/">Artem Olegovich</a></em>
</small></p>
<p><strong>Not making as much progress with your studies as you could be? The issue might be unclear goals.</strong></p>
<p>I studied Japanese full-time at a university in Tokyo for two years, learning around 500 kanji characters during my stay. After my exchange study was over I decided to stay in Japan, and have been here for close to 10 years now. </p>
<p>You might think my kanji ability would have improved a lot during that time, but for the most of my stay I didn't seriously study much. I basically just coasted at the level I had attained before. </p>
<h2>Importance of goal-setting</h2>
<blockquote>
<p><em>"I have met so many people who have been studying a language for years and never actually made much progress, or are otherwise just about maintaining their plateau of speaking pretty well and never improving."</em> </p>
<p>– <a href="https://www.fluentin3months.com/mini-goals-are-the-path-to-achieving-fluency/">Benny Lewis on goal-setting</a></p>
</blockquote>
<p>Why did I stop improving? I was lacking a clear objective to work towards.</p>
<p>Now a bit over a year ago I decided to seriously up my Japanese game, and started to make progress at a good clip ever since. What finally got me going again was setting a clear goal. </p>
<p>If you haven't set a goal yet for your kanji studies, then consider this your wakeup call. If you have already set a goal but feel it might not be as firm as it could be, then consider this an eye-opener.</p>
<h2>Setting your study goal</h2>
<blockquote>
<p><em>"Without motivation, you die a horrible Japanese learner’s death, usually quite early on (2-3 months in?). There is no continue button or extra lives. You are done."</em></p>
<p>– Adam Shapiro on <a href="http://japaneselevelup.com/the-path-to-japanese-fluency-part-1-constantly-reinforced-motivation/">Why are you Studying Japanese?</a></p>
</blockquote>
<p>When you study, you want to know where you are heading, so you'll know when you get there. What is your motivation?</p>
<p>Mine is pretty simple.</p>
<p>I'm living in Japan with a toddler. Thinking about his education made me realize that if I just continue to coast along, he will pass me in kanji somewhere in the middle of primary school. That would be kind of embarrassing.</p>
<p><img alt="" src="/static/baka-vader.png" /></p>
<p>While him passing me is inevitable (and desirable) if we continue to live in Japan, I would feel more comfortable if it happened during his high school years instead. </p>
<h2>How many kanji is that?</h2>
<p>In Japanese primary school by 6th grade, kids are expected to remember 1006 characters called the "kyoiku kanji" (education kanji) set. Kyoiku kanji covers <a href="http://www.genetickanji.com/">94.5%</a> of the characters you encounter in the wild (<a href="https://www.kanshudo.com/collections/kyoiku_kanji">full kyoiku kanji list here</a>). </p>
<p>Doubling this to "joyo kanji" would get me to 99.7% coverage. Whether I want to continue there or go back to coasting mode after reaching my goal will be a decision for another day.</p>
<p>So I should know the kyoiku kanji set at least. But as anyone who has expended serious effort on the kanji front can tell you, there are vastly different ways to define actually "knowing" a character.</p>
<h2>The many ways to "know a kanji"</h2>
<blockquote>
<p><em>"I don’t consider a Kanji as being learned until I know the most common words using that Kanji with the correct readings and can write those words randomly months after I initially memorized it. Unfortunately, given that standard, I probably know about 100-200 Kanji but hey, we all need goals, right?"</em></p>
<p>– Tae Kim on <a href="http://www.guidetojapanese.org/blog/2014/06/23/you-cant-learn-kanji/">You can’t “learn” Kanji!!</a></p>
</blockquote>
<p>For some people it means that when you see the character, you can recite the rough meaning of it in English.</p>
<p>For some it means knowing the Japanese reading for it. Even that is vague, as there are always multiple ways to read a character, depending on the context. Perhaps you want to aim at knowing all the most common readings. Some might even try to learn the rarer readings.</p>
<p>Do you have to know every single character, or are you allowed to make mistakes?</p>
<p><img alt="" src="/static/zoku_kanji.png" /></p>
<p>Should you be able to write the character too? In the correct stroke order? Have you failed if you miss a hook, or pierce a line where it should be contained?</p>
<h2>Refining your goal</h2>
<blockquote>
<p><em>"90% of learning is simply not forgetting"</em></p>
<p>– Lloyd Vincent on <a href="http://nihonshock.com/2009/11/how-i-studied-kanji/">How I studied kanji</a></p>
</blockquote>
<p>Perhaps you want to get hired by a Japanese company and to that end need to pass a certain JLPT level. In that case your goal is clear.</p>
<p>For the rest of us, we have to make our own goals.</p>
<p>In my case I want to reach at least 6th grade level, so my goal is to get an A in a sixth grade exam. And to make sure it isn't just a lucky fluke, I want to get two As in a row.</p>
<p>I will take writing exams intended for Japanese school kids until I pass each grade level, with grade 6 being the ultimate target. If this sounds like the goal for you as well, you can <a href="http://happylilac.net/sy-k3test.html">find the tests here</a>. </p>
<h2>Working towards your goal</h2>
<p>Doing these tests each week and then memorizing anything I missed also gives me nice <a href="https://www.fluentin3months.com/mini-goals-are-the-path-to-achieving-fluency/">mini-goals</a>. Anything I miss I add to the <a href="http://nihongo-app.com/">spaced repetition app Nihongo</a> to make sure I will re-study them until they stick.</p>
<blockquote>
<p><em>"Think about it like this: if kanji really DID look like the things that they describe, you'd have to memorize 2,000 complicated drawings that had nothing in common with each other. But with radicals, all you got to do is learn around 200 simple shapes and you can draw and read almost all kanji - which was exactly the intention of kanji's inventors."</em></p>
<p>– <a href="http://www.kanjidamage.com/kanji_facts">Kanji facts from KanjiDamage.com</a></p>
</blockquote>
<p>I don't just study the character out of context, instead I check example sentences and <a href="https://ahasensei.wordpress.com/2012/05/03/what-i-wish-i-knew-before-learning-kanji/">pay attention to any radicals that I am unfamiliar with</a>.</p>
<p>Clearing your daily flashcards quickly becomes a habit. I share <a href="http://www.japaneseammo.com/how-to-supercharge-your-japanese-by-setting-goals/">Ben's anchoring techniques</a> of starting the review while eating breakfast and proceeding whenever I have a bit of free time during the day. </p>
<h2>Conclusion</h2>
<p>I'm currently scoring around 50% on the 6th grade exams, and can only get As on 3rd grade exams. I have a lot of work to reach my goal, but at least I'll know when I get there.</p>
<p><img alt="" src="/static/grade3_20170531_test9.png" /></p>
<p>When I do, a small celebration will be in order before deciding where to head next.</p>
<p>That's my goal. <strong>What's yours?</strong></p>
<h2>My background</h2>
<p>I've lived in Japan for 9 years with my Japanese wife and now a 2-year old boy. When I did the JLPT test four years ago, I passed N2. </p>
<p>Besides being obsessed with studying Japanese, I'm a programmer and run the Japanese candy subscription box <a href="/">Candy Japan</a>.</p>
]]>
			</description>
		</item>

		<item>
			<pubDate>Tue, 28 Feb 2017 14:24:49 +0000</pubDate>
			<title>What I won&#39;t write about</title>
			<link>http://www.candyjapan.com/what-i-wont-write-about</link>
			<guid>http://www.candyjapan.com/what-i-wont-write-about</guid>
			<description>
<![CDATA[
<h2>Limits to transparency</h2>
<p>Transparency with profit numbers, subscriber numbers and details on the set-ups of shipments as such is fine, but recently I have decided there is one thing I will no longer share information about: anything <a href="https://en.wikipedia.org/wiki/Zero-sum_game">zero-sum</a>, which at this point is limited to marketing campaigns.</p>
<h2>Why?</h2>
<p>Because it can cost a huge chunk of money to experiment with marketing, and the big result you get is information on what works. Sharing this information would be the equivalent of giving that money away, as competitors reading this blog would go out and do the same things. In a zero-sum situation whatever is gained by one party is lost by the others, meaning more people doing the same thing is not helpful to anyone.</p>
<p>It would not only erase any benefit Candy Japan would be getting, but likely no-one could profit any longer. Therefore sharing this information would be pointless.</p>
<p>Some day in the future I will share more details when it no longer matters, except as an interesting past case study, but not at the moment.</p>
]]>
			</description>
		</item>

		<item>
			<pubDate>Sun, 29 Jan 2017 15:16:49 +0000</pubDate>
			<title>Candy Japan 2016 Year in Review</title>
			<link>http://www.candyjapan.com/2016-in-review</link>
			<guid>http://www.candyjapan.com/2016-in-review</guid>
			<description>
<![CDATA[
<p><a href="/">Candy Japan</a> mails subscribers around the world candy twice a month.</p>
<p><img alt="" src="/static/2016_chart_real.png" /></p>
<h2>How it started</h2>
<p>In 2011 I moved to Japan. To pay the rent I decided to find items to sell online. Candy seemed to have a nice balance between being fun to receive and also easy to send. I set it to work like a book club, you become a member and then periodically get new sweets to try.</p>
<p>It grew rapidly to 300 customers after launch, staying at that level until 2013. In <a href="/behind-the-scenes/2014-year-in-review">2014 there was massive growth</a>, followed by big issues with credit card fraud in <a href="/behind-the-scenes/2015-year-in-review">2015</a>.</p>
<h2>2016</h2>
<p>We sent literally tons of sweets to people, totaling 15,710 boxes of candy (pictured below to scale). Sales were roughly $15,000 / month. </p>
<p><img alt="" src="/static/candy_box_pile.png" /></p>
<p>I let my personal life (getting serious about learning Japanese again and being a dad) take priority. I did spend a ton of time running the service, but did not attempt any radical improvements. Two things did happen though.</p>
<h2>Thing number one: USDJPY</h2>
<p>I had grown used to the cheap yen and put that towards sending people more stuff in a bigger box. Below you can see the packages in the beginning vs. now.</p>
<p><img alt="" src="https://www.candyjapan.com/static/japanese_envelopes.jpg" /></p>
<p><img alt="" src="/static/bigger_candy_boxes_800.jpg" /></p>
<p>In 2016 Japanese yen was suddenly becoming very expensive, meaning shipping, sweets and packaging also started to cost a lot more, making profit margins slim. I couldn't cut back on spending since I had already promised this level of service to subscribers. </p>
<p>Although there are now more than twice as many members than in the beginning, financially there is little difference.</p>
<h2>Thing number two: Video ad</h2>
<p>One thing I did manage to do was produce a video ad. Its intended audience is people in early 20s who are really really into Japan. It seemed important to try, because I can use it as a preroll ad on YouTube, which means a huge potential audience. </p>
<iframe width="560" height="315" src="https://www.youtube.com/embed/-0aY1GxvRMk" frameborder="0" allowfullscreen></iframe>

<p>The ad took months to get made and cost about $3000. I learned that $100 per second is pretty typical for an animation. On top of getting the video made, I've spent about $2000 on the campaign. </p>
<p>Turns out YouTube ads are really expensive! 1 cent per view is the minimum, which means $10 CPM. There are many purchases resulting from the ad, but just not enough to break even. </p>
<h2>Thanks for reading</h2>
<p>I remain hopeful that I can get the ad to work next year, as there are some tweaks I can still do to improve on cost per conversion. Yen seems to be getting cheaper again, so hopefully things will turn out OK there as well. </p>
<p>If you'd like to get some candy, you can <a href="/">subscribe to Candy Japan here</a>.</p>
]]>
			</description>
		</item>

		<item>
			<pubDate>Thu, 17 Nov 2016 03:04:54 +0000</pubDate>
			<title>Algorithmic fitting of japanese candy</title>
			<link>http://www.candyjapan.com/algorithmic-fitting-of-japanese-candy</link>
			<guid>http://www.candyjapan.com/algorithmic-fitting-of-japanese-candy</guid>
			<description>
<![CDATA[
<p><a href="https://www.candyjapan.com">Candy Japan</a> ships candy to subscribers twice a month. This means that I spend many hours looking for candy and then checking which combinations would fit the box in the best way.</p>

<p>Hey I know, I'm a programmer, I'll just write an algorithm to do it for me. How hard could it be?</p>

<p><i>Given a list of candy dimensions, test if they'll fit within the 23 x 17 x 4 cm parcel pictured below.</i></p>

<canvas id="box" width="1000" height="600"></canvas>

<p>One necessary but not sufficient condition is that the total volume of the candies has to be less than the volume of the parcel.</p>

<p>Another one is that no individual candy can be too big:</p>

<canvas id="tooBig" width="1000" height="600"></canvas>

<p>Even with both conditions met, the candy still might not fit.</p>

<p>Below you can see an example of this. The green candy would fit in the box, but adding the red candy is impossible, even though each would fit individually and their total volume is less than that of the box.</p>

<canvas id="noCombo" width="1000" height="600"></canvas>

<p>To find the true solution, we can try putting candies next to each other in various ways to see if any permutations would fit. Different locations and rotations need to be tested.</p>

<p>Rotating the boxes is simple, just find all the ways to permute dimensions.</p>

<canvas id="showRotations" width="1000" height="600"></canvas>

<p>If you tested different locations millimeter by millimeter in three dimensions, with just three candies you would be looking at roughly 10<sup>20</sup> ways to place them. The program would take millions of years to complete.</p>

<h2>Reducing permutations</h2>
<p>Testing any combination which leaves space between the candies is useless. You can always just move them closer together and still have a valid permutation. In other words, don't test "islands" of candy.</p>

<canvas id="candyIsland" width="1000" height="600"></canvas>

<p>Now you only need to test combinations where the candies are touching, but you can still slide the candies along each other, leaving as many permutations as you want accuracy.</p>

<p>Sliding the smaller one past the edge of the larger one just takes more space. Placing the smaller one between the edges doesn't take more space, but it isn't helping either.</p>

<canvas id="candySlide" width="1000" height="600"></canvas>

<p>From this it seems enough to only test combinations where two edges align. The parent box stays put while the child box goes through possible positions. The parent has 6 surfaces, each surface with 4 ways to align the unrotated child.</p>

<canvas id="twoBoxes" width="1000" height="600"></canvas>

<p>Below you can see the 144 different alignments after child rotation is also taken into account.</p>

<canvas id="twoBoxesRotated" width="1000" height="600"></canvas>

<p>This method can be chained to test for arbitrary numbers of candy, although the permutations explode quite rapidly. </p>

<h3>6*144<sup>(n-1)</sup>*(n-1)! <sup class="fakelink" onclick="$('#explanation').slideToggle()">?</sup></h3>

<p id="explanation" style="display:none">The 6 in the beginning comes from the 6 ways the first parentless candy can be rotated. Adding another candy means 144 more ways to attach it. (n-1)! because it can be attached to each of the existing candy boxes (first there is 1 way to attach it, then 2 ways, then 3 ways and so on, all multiplied together).</p>

<table style="width:40%">
            <tr><td>n</td><td>permutations</td></tr>
            <tr><td>1</td><td>6</td></tr>
            <tr><td>2</td><td>864</td></tr>
            <tr><td>3</td><td>248832</td></tr>
            <tr><td>4</td><td>107495424</td></tr>
</table>

<p>At a million tests per second, 4 boxes would already take over a minute in the worst case, although you can abort as soon as you find a fit.  With more boxes it would also be necessary to test for intersections with previously added ones, which would also eliminate many recursions. </p>

<h2>Conclusion &amp; improvements</h2>
<p>So how hard can it be? <a href="https://en.wikipedia.org/wiki/Bin_packing_problem">NP-hard</a>, it turns out</a>.</p>

<p>It would make sense to try some common arrangements first, and to not venture down recursive branches where the previous box combination is already known not to fit.</p>

<p>I am likely to use an existing solution if I adopt this way to find optimal candy sequences, since at this point my JavaScript code is just too slow. For example the Python package pyShipping comes with <a href="https://github.com/hudora/pyShipping/blob/master/pyshipping/binpack_simple.py">an implementation</a> which speeds up these tests by using heuristics.</p>

<p>Still, writing this was a fun learning experience. If you would like me to pack some boxes for you too, you can <a href="/">subscribe to Candy Japan here</a>.</p>

<script src="https://cdn.rawgit.com/google/code-prettify/master/loader/run_prettify.js?autoload=true&lang=css" defer="defer"></script>

<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.1.1/jquery.min.js"></script>

<script>
/*
 *
 *   Disclaimer: When I started coding this, I had no idea how to actually solve the problem. 
 *   So it's very much exploratory.
 *               
 ****/

function l(str) {
    console.log(str);
};

var canvasWidth = 1000;
var canvasHeight = 600;
var bottomWidth = 230; // mm
var bottomHeight = 170;

var parcelWidth = bottomWidth;
var parcelHeight = bottomHeight;
var parcelDepth = 40; // mm

function projectFromViewToScreen(point) {
    var totalWidthAfterProjection = bottomWidth + bottomHeight;
    var scale = canvasWidth / totalWidthAfterProjection;
    return {
        x: point.x * scale + point.y * scale,
        y: canvasHeight - point.y * scale - point.z * scale
    };
}

function line(context, a, b) {
    var aProjected = projectFromViewToScreen(a);
    var bProjected = projectFromViewToScreen(b);
    context.beginPath();
    context.moveTo(aProjected.x, aProjected.y);
    context.lineTo(bProjected.x, bProjected.y);
    context.stroke();
}

function rect(context, a, b, c, d) {
    var aProjected = projectFromViewToScreen(a);
    var bProjected = projectFromViewToScreen(b);
    var cProjected = projectFromViewToScreen(c);
    var dProjected = projectFromViewToScreen(d);
    context.beginPath();
    context.moveTo(aProjected.x, aProjected.y);
    context.lineTo(bProjected.x, bProjected.y);
    context.lineTo(cProjected.x, cProjected.y);
    context.lineTo(dProjected.x, dProjected.y);
    context.fill();
}

function setRandomFillColor(context) {
    var r = Math.floor(Math.random() * 256).toString(16);
    var g = Math.floor(Math.random() * 256).toString(16);
    var b = Math.floor(Math.random() * 256).toString(16);
    context.fillStyle = '#' + r + g + b;
};

function multiplyColorBy(color, coefficient) {
    var r = parseInt(color.substr(1, 2), 16);
    var g = parseInt(color.substr(3, 2), 16);
    var b = parseInt(color.substr(5, 2), 16);

    r *= coefficient; g *= coefficient; b *= coefficient;

    var rHex = Math.floor(r).toString(16);
    var gHex = Math.floor(g).toString(16);
    var bHex = Math.floor(b).toString(16);

    if (rHex.length == 1) rHex = '0' + rHex;
    if (gHex.length == 1) gHex = '0' + gHex;
    if (bHex.length == 1) bHex = '0' + bHex;

    return '#' + rHex + gHex + bHex;
};

function drawBox(context, boxX, boxY, boxZ, boxWidth, boxHeight, boxDepth, baseColor, drawTop) {

    // Base
    context.fillStyle = multiplyColorBy(baseColor, 1.0);
    rect(
        context,
        {x: boxX + 0, y: boxY + 0, z: boxZ}, 
        {x: boxX + boxWidth, y: boxY + 0, z: boxZ},
        {x: boxX + boxWidth, y: boxY + boxHeight, z: boxZ},
        {x: boxX + 0, y: boxY + boxHeight, z: boxZ}     
    );

    // Back
    context.fillStyle = multiplyColorBy(baseColor, 0.8);
    rect(
        context,
        {x: boxX + 0, y: boxY + boxHeight, z: boxZ + 0}, 
        {x: boxX + boxWidth, y: boxY + boxHeight, z: boxZ + 0},
        {x: boxX + boxWidth, y: boxY + boxHeight, z: boxZ + boxDepth},
        {x: boxX + 0, y: boxY + boxHeight, z: boxZ + boxDepth}
    );

    // Left side
    context.fillStyle = multiplyColorBy(baseColor, 0.6);
    rect(
        context,
        {x: boxX + 0, y: boxY + 0, z: boxZ + 0}, 
        {x: boxX + 0, y: boxY + boxHeight, z: boxZ + 0},
        {x: boxX + 0, y: boxY + boxHeight, z: boxZ + boxDepth},
        {x: boxX + 0, y: boxY + 0, z: boxZ + boxDepth}
    );

    // Right side
    context.fillStyle = multiplyColorBy(baseColor, 0.6);
    rect(
        context,
        {x: boxX + boxWidth, y: boxY + 0, z: boxZ + 0}, 
        {x: boxX + boxWidth, y: boxY + boxHeight, z: boxZ + 0},
        {x: boxX + boxWidth, y: boxY + boxHeight, z: boxZ + boxDepth},
        {x: boxX + boxWidth, y: boxY + 0, z: boxZ + boxDepth}
    );

    // Front
    context.fillStyle = multiplyColorBy(baseColor, 0.5);
    rect(
        context,
        {x: boxX + 0, y: boxY + 0, z: boxZ + 0}, 
        {x: boxX + boxWidth, y: boxY + 0, z: boxZ + 0},
        {x: boxX + boxWidth, y: boxY + 0, z: boxZ + boxDepth},
        {x: boxX + 0, y: boxY + 0, z: boxZ + boxDepth}
    );

    // Top
    if (drawTop) {
        context.fillStyle = multiplyColorBy(baseColor, 0.8);
        rect(
            context,
            {x: boxX + 0, y: boxY + 0, z: boxZ + boxDepth}, 
            {x: boxX + boxWidth, y: boxY + 0, z: boxZ + boxDepth},
            {x: boxX + boxWidth, y: boxY + boxHeight, z: boxZ + boxDepth},
            {x: boxX + 0, y: boxY + boxHeight, z: boxZ + boxDepth}
        );
    }
}

function drawBottomGrid(context) {
    context.setLineDash([5, 3]);

    var cm = 10; // mm
    for (var x = 0; x < bottomWidth; x += cm) {
        for (var y = 0; y < bottomHeight; y += cm) {
            line(
                context,
                {x: x, y: y, z: 0}, 
                {x: x + cm, y: y, z: 0}
            );          
            line(
                context,
                {x: x, y: y, z: 0}, 
                {x: x, y: y + cm, z: 0}
            );          
        }
    }
}

function clear(context) {
    context.clearRect(0, 0, context.canvas.width, context.canvas.height);
}

function portionOfCanvasVisible(canvasElement) {
    var fudge = $(window).height() * 0.2;
    var scrollPos = window.pageYOffset + $(window).height() - fudge;
    var canvasTopY = canvasElement.offset().top;
    var canvasBottomY = canvasTopY + canvasElement.height();
    var unclamped = (scrollPos - canvasTopY) / (canvasBottomY - canvasTopY);
    return Math.max(0, Math.min(unclamped, 1));
}

function rotations(width, height, depth) { 
    return [
        {width: width,  height: height, depth: depth},
        {width: width,  height: depth,  depth: height},
        {width: height, height: width,  depth: depth},
        {width: height, height: depth,  depth: width},
        {width: depth,  height: height, depth: width},
        {width: depth,  height: width,  depth: height}
    ];
}

// Given a box as location of corner number 0 and its dimensions, return the coordinates
// of the given vertex.
//
//     5-------6
//    /|      /|
//   / |     / |
//  4--|----7  |
//  |  1----|--2
//  | /     | /
//  0-------3
//
function boxVertexCoordinates(box, index) {
    with (box) return [
        {x: x,          y: y,           z: z},
        {x: x,          y: y + height,  z: z},
        {x: x + width,  y: y + height,  z: z},
        {x: x + width,  y: y,           z: z},
        {x: x,          y: y,           z: z + depth},
        {x: x,          y: y + height,  z: z + depth},
        {x: x + width,  y: y + height,  z: z + depth},
        {x: x + width,  y: y,           z: z + depth},
    ][index];
};

// Here are all the ways to align vertices such that parent doesn't intersect with child,
// with an ordering such that alignments go from top, to middle clockwise (as viewed from top)
// starting from front, and end with bottom. 
var alignments = [
    // Top
    {parentVertexIndex: 4, childVertexIndex: 0, name: 'top'},
    {parentVertexIndex: 5, childVertexIndex: 1, name: 'top'},
    {parentVertexIndex: 6, childVertexIndex: 2, name: 'top'},
    {parentVertexIndex: 7, childVertexIndex: 3, name: 'top'},

    // Front
    {parentVertexIndex: 0, childVertexIndex: 1, name: 'front'},
    {parentVertexIndex: 4, childVertexIndex: 5, name: 'front'},
    {parentVertexIndex: 7, childVertexIndex: 6, name: 'front'},
    {parentVertexIndex: 3, childVertexIndex: 2, name: 'front'},

    // Left
    {parentVertexIndex: 1, childVertexIndex: 2, name: 'left'},
    {parentVertexIndex: 5, childVertexIndex: 6, name: 'left'},
    {parentVertexIndex: 4, childVertexIndex: 7, name: 'left'},
    {parentVertexIndex: 0, childVertexIndex: 3, name: 'left'},

    // Back
    {parentVertexIndex: 2, childVertexIndex: 3, name: 'back'},
    {parentVertexIndex: 6, childVertexIndex: 7, name: 'back'},
    {parentVertexIndex: 5, childVertexIndex: 4, name: 'back'},
    {parentVertexIndex: 1, childVertexIndex: 0, name: 'back'},

    // Right
    {parentVertexIndex: 3, childVertexIndex: 0, name: 'right'},
    {parentVertexIndex: 7, childVertexIndex: 4, name: 'right'},
    {parentVertexIndex: 6, childVertexIndex: 5, name: 'right'},
    {parentVertexIndex: 2, childVertexIndex: 1, name: 'right'},

    // Bottom
    {parentVertexIndex: 1, childVertexIndex: 5, name: 'bottom'},
    {parentVertexIndex: 0, childVertexIndex: 4, name: 'bottom'},
    {parentVertexIndex: 3, childVertexIndex: 7, name: 'bottom'},
    {parentVertexIndex: 2, childVertexIndex: 6, name: 'bottom'}
];

// Move the child such that it snugs against the parent in the way described by the passed alignment.
function align(parent, child, alignment) {
    var parentVertex = boxVertexCoordinates(parent, alignment.parentVertexIndex);
    var childVertex = boxVertexCoordinates(child, alignment.childVertexIndex);
    child.x += parentVertex.x - childVertex.x;
    child.y += parentVertex.y - childVertex.y;
    child.z += parentVertex.z - childVertex.z;
}

// Some kind of object for iterating through permutations, which would have next()
// which either gives the next permutation, or null. It should also have restart().
//
// box1 permutation 4 (rotation only)
// box2 permutation 21 (against current box1)
// box3 permutation 134 (against current box2)
// 
// And you call next() on box3 and testing the resulting permutations, until it gives
// null. At which point you call next() on its parent and then reset it. Unless the parent
// also returns null, in which case you call next() on ITS parent. If the bottom one gives
// null then you've gone through all permutations.
//
// There must be a better way to phrase this,.. still seems a bit vague.

// Given a list of candy, returns true if it can fit in the parcel.

// Class for iterating through ways of attaching nextBox to existingBoxes. Better than making
// a function that generates all permutations, as this way only the current one has to be in memory
// instead of returning a list with millions of items in it.
function Permutator(existingBoxes, nextBox) {
    this.childRotationIndex = -1;
    this.childAlignmentIndex = 0;
    this.parentBoxIndex = 0;
    this.existingBoxes = existingBoxes;
    this.nextBox = nextBox;
}

Permutator.prototype.next = function() {
    this.childRotationIndex++;
    if (this.childRotationIndex === 6) {
        this.childRotationIndex = 0;
        this.childAlignmentIndex++;
        if (this.childAlignmentIndex === alignments.length) {
            this.childAlignmentIndex = 0;
            this.parentBoxIndex++;
            if (this.parentBoxIndex === this.existingBoxes.length) {
                return false; // went through all permutations
            }
        }
    }
//  permutation = [this.childRotationIndex, this.childAlignmentIndex, this.parentBoxIndex];
//  l("returning");
//  l(permutation);
    return true;
}

// Given a bunch of boxes, figures out the width, height, depth necessary to hold them all.
function boundingBox(boxes) {
    var bounds = {};
    var minX, minY, minZ, maxX, maxY, maxZ;
    for (var i = 0; i < boxes.length; i++) {
        var box = boxes[i];

        if (minX === undefined || box.x < minX) minX = box.x;
        if (minY === undefined || box.y < minY) minY = box.y;
        if (minZ === undefined || box.z < minZ) minZ = box.z;
        if (maxX === undefined || box.x + box.width > maxX) maxX = box.x + box.width;
        if (maxY === undefined || box.y + box.height > maxY) maxY = box.y + box.height;
        if (maxZ === undefined || box.z + box.depth > maxZ) maxZ = box.z + box.depth;
    }

    return {
        width: maxX - minX,
        height: maxY - minY,
        depth: maxZ - minZ
    };
}

// Returns true for cases like:
//
// a   ------------------
// b            ---
//
// a       ---
// b   ----------
//
// a     ------------
// b        ------------
//
// Returns false for cases like:
//
// a     ----------------
// b  -- 
//
// a  --------
// b                 ---
//
function do1DLinesIntersect(aStart, aEnd, bStart, bEnd) {
    if (aStart > bEnd) return false;
    if (aEnd < bStart) return false;
    return true;
}

// Return true if box intersects any of the given boxes
function boxIntersects(box, boxes) {
    for (var i = 0; i < boxes.length; i++) {
        // Intersects if all dimensions intersect
        if (do1DLinesIntersect(box.x, box.x + box.width, boxes[i].x, boxes[i].x + boxes[i].width) &&
            do1DLinesIntersect(box.y, box.y + box.height, boxes[i].y, boxes[i].y + boxes[i].height) &&
            do1DLinesIntersect(box.z, box.z + box.depth, boxes[i].z, boxes[i].z + boxes[i].depth)) {
            return true;
        }
    }
    return false;
}

// Returns true if the bounding box for the given boxes would fit within parcel (without testing rotations).
function canFit(boxes) {
    var bounds = boundingBox(boxes);
    if (bounds.width <= parcelWidth && bounds.height <= parcelHeight && bounds.depth <= parcelDepth) {
        return true;
    }
    return false;
}

function getBoxPermutations(existingBoxes, remainingBoxes) {
    var perms = [];
    allPerms(existingBoxes, remainingBoxes);
    return perms;

    function allPerms(existingBoxes, remainingBoxes) {
        if (remainingBoxes.length === 0) {
            // End of recursion reached, do something with existingBoxes
            perms.push(existingBoxes);
            return;
        }

        // Take out the next box from remaining
        var nextBox = remainingBoxes[0];
        remainingBoxes = remainingBoxes.slice(1);

        if (existingBoxes.length === 0) {
            // No boxes added yet, so start by exploring rotations of the first one
            var rots = rotations(nextBox.width, nextBox.height, nextBox.depth);
            for (var i = 0; i < rots.length; i++) {
                allPerms([{
                    x: 0,
                    y: 0,
                    z: 0,
                    width: rots[i].width,
                    height: rots[i].height,
                    depth: rots[i].depth,
                }], remainingBoxes);
            }
            return;
        }

        // There are both boxes already in play and some left to try, so try the next
        // box against all the existing ones.
        var permutator = new Permutator(existingBoxes, nextBox);

        while (permutator.next()) {
            // Generate the list of boxes that would result from applying this permutation to existingBoxes

            // First rotate the box to be added
            var rotatedDimensions = rotations(nextBox.width, nextBox.height, nextBox.depth);
            rotatedDimensions = rotatedDimensions[permutator.childRotationIndex];

            // Get the box that will be its parent
            var parentDimensions = existingBoxes[permutator.parentBoxIndex];

            var parent = {
                x: 0,
                y: 0,
                z: 0,
                width: parentDimensions.width,
                height: parentDimensions.height,
                depth: parentDimensions.depth
            };

            // Attach child to parent
            var child = {
                x : 0,
                y : 0,
                z : 0,
                width: rotatedDimensions.width,
                height: rotatedDimensions.height, 
                depth: rotatedDimensions.depth
            };

            var alignment = alignments[permutator.childAlignmentIndex];

            align(parent, child, alignment);

            var newExistingBoxes = existingBoxes.slice(0); // wasn't sure if it's safe to modify the original
            newExistingBoxes.push(child);

            allPerms(newExistingBoxes, remainingBoxes);
        }
    }
}

/*
 * From here on the code to draw each canvas.
 *
 ***/

function justABox() {
    var canvasElement = $('#box');
    var canvas = canvasElement[0];
    var context = canvas.getContext('2d');
    clear(context);

    var p = portionOfCanvasVisible(canvasElement);
    p = p*p*p;

    context.globalAlpha = 0.25 + 0.5 * p;
    drawBox(context, 0, 0, 0, parcelWidth, parcelHeight, parcelDepth, '#d6b999', false);
}

function tooBig() {
    var canvasElement = $('#tooBig');
    var canvas = canvasElement[0];
    var context = canvas.getContext('2d');
    clear(context);

    var p = portionOfCanvasVisible(canvasElement);
    p = p*p*p;

    context.globalAlpha = 1.0;
    drawBox(context, - parcelWidth * 0.6 + 100 * (1-p), parcelHeight * 0.8, 5, parcelWidth * 1.55 - 100 * (1-p), parcelHeight * 0.2, parcelDepth / 2, '#ff0000', true);
    context.globalAlpha = 0.3;
    drawBox(context, 0, 0, 0, parcelWidth, parcelHeight, parcelDepth, '#d6b999', false);
}

function noCombo() {
    var canvasElement = $('#noCombo');

    var canvas = canvasElement[0];
    var context = canvas.getContext('2d');
    clear(context);

    var p = portionOfCanvasVisible(canvasElement);
    p = p*p*p;

    context.globalAlpha = 0.5 * p*p;
    drawBox(context, 0, 5, 0                                              , parcelWidth * 0.9, parcelHeight * 0.9, parcelDepth * 0.5, '#33cc33', true);
    drawBox(context, parcelWidth * 0.5 - parcelDepth * 0.9 * 0.5, 5, parcelDepth * 0.5 + (1 - p) * 60, parcelDepth * 0.9, parcelDepth * 0.9, parcelDepth * 0.7, '#ff0000', true);
    context.globalAlpha = 0.4 * p;
    drawBox(context, 0, 0, 0, parcelWidth, parcelHeight, parcelDepth, '#d6b999', false);
}

function showPermutations() {
    var canvasElement = $('#showPermutations');

    var canvas = canvasElement[0];
    var context = canvas.getContext('2d');
    clear(context);

    var p = portionOfCanvasVisible(canvasElement);
    p = p*p*p*p*p;

    context.globalAlpha = 0.5 * p*p;
    drawBox(context, 0, 5, 0                                              , parcelWidth * 0.9, parcelHeight * 0.9, parcelDepth * 0.5, '#d6b999', true);
    drawBox(context, parcelWidth * 0.5 - parcelDepth * 0.9 * 0.5, 5, parcelDepth * 0.5 + (1 - p) * 30, parcelDepth * 0.9, parcelDepth * 0.9, parcelDepth * 0.9, '#ff0000', true);
    context.globalAlpha = 0.3 * p;
    drawBox(context, 0, 0, 0, parcelWidth, parcelHeight, parcelDepth, '#d6b999', false);
}

function showRotations() {
    var canvasElement = $('#showRotations');

    var canvas = canvasElement[0];
    var context = canvas.getContext('2d');
    clear(context);

    var timestamp = (new Date()).getTime();
    var prevRotation = (Math.floor(timestamp/500))%6;
    var currentRotation = (Math.floor(timestamp/500) - 1)%6;
    var currentDimensions = rotations(parcelWidth * 0.5, parcelHeight * 0.2, parcelDepth * 0.2)[currentRotation];
    var prevDimensions = rotations(parcelWidth * 0.5, parcelHeight * 0.2, parcelDepth * 0.2)[prevRotation];

    // 0 means show prev, 1 means show current
    var transition = (timestamp/500) - Math.floor(timestamp/500);
    transition *= transition * transition;

    context.globalAlpha = (1 - transition);
    drawBox(context, 0, 0, 0, currentDimensions.width, currentDimensions.height, currentDimensions.depth, '#3333ff', true);
    context.globalAlpha = transition;
    drawBox(context, 0, 0, 0, prevDimensions.width, prevDimensions.height, prevDimensions.depth, '#3333ff', true);
    context.globalAlpha = 0.3;
    drawBox(context, 0, 0, 0, parcelWidth, parcelHeight, parcelDepth, '#d6b999', false);
}

function candyIsland() {
    var canvasElement = $('#candyIsland');

    var canvas = canvasElement[0];
    var context = canvas.getContext('2d');
    clear(context);

    var timestamp = (new Date()).getTime();

    drawBox(context, 0, 0, 0, parcelWidth, parcelHeight, parcelDepth, '#d6b999', false);

    var p = portionOfCanvasVisible(canvasElement);
    p = Math.sqrt(p*p);

    drawBox(context, parcelWidth * (0.25 - p*0.125) + parcelWidth * 0.25, parcelHeight * 0.5 + parcelHeight * 0.25 - parcelHeight*p*0.2, parcelDepth * 0.25, parcelWidth * 0.2, parcelHeight * 0.1, parcelDepth * 0.5, '#333399', true);
    drawBox(context, parcelWidth * (0.25 - p*0.125) + parcelWidth * 0.35, parcelHeight * 0.5 + parcelHeight * 0.25 - parcelHeight*p*0.2, parcelDepth * (0.25 + 0.5), parcelWidth * 0.1, parcelHeight * 0.05, parcelDepth * 0.2, '#3399ff', true);
    drawBox(context, parcelWidth * (0.25 + p*0.125), parcelHeight*p*0.2 + parcelHeight * 0.25, parcelDepth * 0.25, parcelWidth * 0.2, parcelHeight * 0.1, parcelDepth * 0.5, '#3333ff', true);
    drawBox(context, parcelWidth * (0.25 + p*0.125), parcelHeight*p*0.2 + parcelHeight * 0.25, parcelDepth * (0.25 + 0.5), parcelWidth * 0.1, parcelHeight * 0.1, parcelDepth * 0.2, '#999966', true);
}

function candySlide() {
    var canvasElement = $('#candySlide');

    var canvas = canvasElement[0];
    var context = canvas.getContext('2d');
    clear(context);

    var timestamp = (new Date()).getTime();

    var parent = {
        x: 40 + parcelWidth * (0.25 - 0.125 * 3) + parcelWidth * 0.25,
        y: parcelHeight * 0.5 + parcelHeight * 0.25 - parcelHeight*0.2 - 75,
        z: 0,
        width: parcelWidth * 0.2 * 3.5,
        height: parcelHeight * 0.1 * 3.5,
        depth: parcelDepth * 1.0 * 3.5
    }

    var child = {
        x: 40 + Math.sin(timestamp * 0.001)*110 + parcelWidth * (0.25 + 0.125 + 0.01),
        y: parcelHeight*0.2 + parcelHeight * 0.25 - 75,
        z: 0,
        width: parcelWidth * 0.15,
        height: parcelHeight * 0.1,
        depth: parcelDepth * 0.5
    }

    context.fillStyle = '#aaffaa';
    rect(
        context,
        {x: Math.min(parent.x, child.x), y: child.y, z: 0}, 
        {x: Math.max(parent.x + parent.width, child.x + child.width), y: child.y, z: 0}, 
        {x: Math.max(parent.x + parent.width, child.x + child.width), y: child.y + child.height + parent.height, z: 0}, 
        {x: Math.min(parent.x, child.x), y: child.y + child.height + parent.height, z: 0}
    );

    with(parent) drawBox(context, x, y, z, width, height, depth, '#333399', true);
    with(child) drawBox(context, x, y, z, width, height, depth, '#3333ff', true);
}

var twoBoxesCurrentGlobalAlpha = 1.0;
var twoBoxesTargetGlobalAlpha = 1.0;
function twoBoxes() {
    var canvasElement = $('#twoBoxes');
    var canvas = canvasElement[0];
    var context = canvas.getContext('2d');
    clear(context);

    // Cross-fade to desired alpha
    twoBoxesCurrentGlobalAlpha = 0.1 * twoBoxesTargetGlobalAlpha + 0.9 * twoBoxesCurrentGlobalAlpha;

    var parent = {
        x : parcelWidth * 0.6,
        y : parcelHeight * 0.1,
        z : parcelDepth * 1.0,
        width : parcelWidth * 0.4, 
        height : parcelHeight * 0.2, 
        depth : parcelDepth * 2.0
    }

    // for (i = 0; i < 8; i++) {
    //  var vertex = projectFromViewToScreen(boxVertexCoordinates(parent, i));
    //  context.fillText(i, vertex.x, vertex.y);
    // }

    // Cycle through positionings of child against parent
    var timestamp = (new Date()).getTime();
    var alignmentIndex = Math.floor(timestamp/500) % alignments.length;
    var alignment = alignments[alignmentIndex];

    context.globalAlpha = 1.0;
    context.font = "20px Arial";
    context.fillStyle = "black";
    context.fillText("" + (alignmentIndex + 1) + " / 24", 800, 20);
    context.globalAlpha = twoBoxesCurrentGlobalAlpha;

    var child = {
        x : 0,
        y : 0,
        z : 0,
        width : parcelWidth * 0.3, 
        height : parcelHeight * 0.1, 
        depth : parcelDepth * 0.2 * 4
    };

    // Get the difference between the desired overlapping edges and translate the child to make them overlap.
    align(parent, child, alignment);

    // Which box to draw first depends on the alignment. For example if the child is in front, you draw it last.
    if (['front', 'right', 'top'].indexOf(alignment.name) !== -1) {
        twoBoxesTargetGlobalAlpha = 1.0;
        with (parent) drawBox(context, x, y, z, width, height, depth, '#3333ff', true);
        with (child) drawBox(context, x, y, z, width, height, depth, '#33ff33', true);
    } else {
        twoBoxesTargetGlobalAlpha = 0.5;
        with (child) drawBox(context, x, y, z, width, height, depth, '#33ff33', true);
        with (parent) drawBox(context, x, y, z, width, height, depth, '#3333ff', true);
    }
}

var twoBoxesRotatedCurrentGlobalAlpha = 1.0;
var twoBoxesRotatedTargetGlobalAlpha = 1.0;
function twoBoxesRotated() {
    var canvasElement = $('#twoBoxesRotated');
    var canvas = canvasElement[0];
    var context = canvas.getContext('2d');
    clear(context);

    // Cross-fade to desired alpha
    twoBoxesRotatedCurrentGlobalAlpha = 0.1 * twoBoxesRotatedTargetGlobalAlpha + 0.9 * twoBoxesRotatedCurrentGlobalAlpha;

    var boxWidth = bottomWidth;
    var boxHeight = bottomHeight;
    var boxDepth = 40; // mm

    var parent = {
        x : boxWidth * 0.6,
        y : boxHeight * 0.1,
        z : boxDepth * 1.0,
        width : boxWidth * 0.4, 
        height : boxHeight * 0.2, 
        depth : boxDepth * 2.0
    }

    // How fast to visualize
    var alignmentDelay = 1500; 
    var rotationDelay = alignmentDelay / 6;

    // Cycle through positionings of child against parent
    var timestamp = (new Date()).getTime();
    var alignmentIndex = Math.floor(timestamp/alignmentDelay) % alignments.length;
    var alignment = alignments[alignmentIndex];
    var rotationIndex = Math.floor(timestamp/rotationDelay) % 6;

    context.globalAlpha = 1.0;
    context.font = "20px Arial";
    context.fillStyle = "black";
    context.fillText("" + (rotationIndex + alignmentIndex * 6 + 1) + " / " + (24 * 6), 800, 20);
    context.globalAlpha = twoBoxesRotatedCurrentGlobalAlpha;

    var child = {
        x : 0,
        y : 0,
        z : 0,
        width : boxWidth * 0.3, 
        height : boxHeight * 0.1, 
        depth : boxDepth * 0.2 * 4
    };

    var rotation = rotations(child.width, child.height, child.depth)[rotationIndex]; 
    with (child) {
        width = rotation.width;
        height = rotation.height;
        depth = rotation.depth;
    }

    // Get the difference between the desired overlapping edges and translate the child to make them overlap.
    align(parent, child, alignment);

    // Which box to draw first depends on the alignment. For example if the child is in front, you draw it last.
    if (['front', 'right', 'top'].indexOf(alignment.name) !== -1) {
        twoBoxesRotatedTargetGlobalAlpha = 1.0;
        with (parent) drawBox(context, x, y, z, width, height, depth, '#3333ff', true);
        with (child) drawBox(context, x, y, z, width, height, depth, '#33ff33', true);
    } else {
        twoBoxesRotatedTargetGlobalAlpha = 0.5;
        with (child) drawBox(context, x, y, z, width, height, depth, '#33ff33', true);
        with (parent) drawBox(context, x, y, z, width, height, depth, '#3333ff', true);
    }
}

function refreshOnScroll() {
    justABox();
    tooBig();
    noCombo();
    candyIsland();
    twoBoxes();
};

var requestAnimationFrame = window.requestAnimationFrame || window.mozRequestAnimationFrame || window.webkitRequestAnimationFrame || window.msRequestAnimationFrame;

function refreshEveryFrame() {
    showRotations();
    candySlide();
    twoBoxes();
    twoBoxesRotated();
    (window.requestAnimationFrame || window.mozRequestAnimationFrame ||
     window.webkitRequestAnimationFrame || window.msRequestAnimationFrame)(refreshEveryFrame);
}

$(function() {
    $(window).on('scroll', refreshOnScroll);
    refreshEveryFrame();
    refreshOnScroll();
});
</script>

<style>
canvas {
    width: 100%;
    margin-bottom: 10%;
}

body {
    max-width: 900px;
    margin: 0 auto;
    line-height: 1.75em;
    padding: 10% 20px 5% 20px;
}

.fakelink {
    margin-left: 2em;
    color: blue;
    cursor: pointer;
    font-size: 90%;
}
</style>
]]>
			</description>
		</item>

		<item>
			<pubDate>Sat, 08 Oct 2016 03:37:09 +0000</pubDate>
			<title>CrateJoy (YC S13) is growing exponentially</title>
			<link>http://www.candyjapan.com/cratejoy-subscription-box-boom</link>
			<guid>http://www.candyjapan.com/cratejoy-subscription-box-boom</guid>
			<description>
<![CDATA[
<p>Subscription boxes are services that send you random stuff in the mail monthly. Kind of like the book clubs of olden times, except for any imaginable type of item.</p>
<p>Currently the most popular way to start such a service is <a href="https://www.cratejoy.com">Cratejoy</a> (YC S13), a store builder designed for setting up services like these. They conveniently have a marketplace listing all stores, complete with date of creation. I spidered the marketplace into <a href="https://docs.google.com/spreadsheets/d/1B5tH6q1qD4RMCYFLPhz0P5fATEWRoC0dHOrh-yevN14/edit?usp=sharing">a spreadsheet</a> and plotted out how many stores existed each month.</p>
<p><img alt="cratejoy_sites_cumulative" src="/static/cratejoy_sites_cumulative.png" /></p>
<p>While a year ago there were about 30 new subscription boxes created on CrateJoy each month, that number has now ballooned to more than 150. That's some wild hockey-stick growth.</p>
<p>I started getting the feeling that every month there are increasingly more and more of these out there. For only Japanese candy, besides our own <a href="https://www.candyjapan.com">Candy Japan</a>, I know of at least 25 competing boxes, with seemingly more popping up every month. Looks like there really is a subscription box gold rush going on. </p>
]]>
			</description>
		</item>

		<item>
			<pubDate>Fri, 30 Sep 2016 10:43:07 +0000</pubDate>
			<title>How many lines of code is Candy Japan?</title>
			<link>http://www.candyjapan.com/how-many-lines-of-code-is-candy-japan</link>
			<guid>http://www.candyjapan.com/how-many-lines-of-code-is-candy-japan</guid>
			<description>
<![CDATA[
<p>Here in Japan there are many unique sweets which are not sold in other countries, so I started a site called Candy Japan to send those abroad on a twice-monthly basis. </p>
<p>When I started there were no good platforms to start such a service, as "subscription boxes" were not a thing yet. So I had to code everything myself. This post is about how much work that turned out to be.</p>
<p>If you would rather listen to me speak, this is also available as a 14 minute <a href="https://www.youtube.com/watch?v=bq9f_de9glk">YouTube version</a>. If you'd like to additionally see me uncomfortable on a stage, there is also a <a href="https://www.youtube.com/watch?v=nPVK4PhioFU">video when I gave this as a presentation at a Hacker News meetup</a>.</p>
<h2>Stack</h2>
<p>Back in 2011 there were no readymade subscription box platforms to use. Even the term "subscription box" wasn't in popular use yet. To write the site I used Python on top of Google App Engine. The site has integrations with PayPal and Recurly (credit card middleware). No other major dependencies, just MixPanel and Google Analytics. </p>
<h2>Surface</h2>
<p>The <a href="https://www.candyjapan.com">landing page</a> has <strong>104</strong> lines of code backing it. How many lines of Python code do you think the entire codebase of Candy Japan has? Write your guess down somewhere so you can see in the end how close you got. Don't include the HTML &amp; CSS templates in your guess, just the Python code.</p>
<p>Besides the landing page, there are other pages which the users can see, such as the FAQ, list of candies that were sent before and the thumbnail generation for them. The images are in the App Engine BlobStore. These add a total of <strong>337</strong> lines of code. </p>
<h2>Under the surface</h2>
<p>If the landing page and other customer-facing pages are the tip of the iceberg, what lies underneath?</p>
<h2>PayPal integration</h2>
<p><img alt="" src="/static/paypal.png" /></p>
<p>There is some code to talk to PayPal. When I originally did this integration, the API I could use was one called the PayPal Payments Standard NVP API. The acronym NVP stands for Name-Value Pair, which is a way to transmit responses back from PayPal in a way which is a bit more painful than JSON. This integration added <strong>712</strong> lines of code.</p>
<h2>Recurly integration</h2>
<p><img alt="" src="/static/recurly.jpg" /></p>
<p>Recurly is middleware which sits between you and credit card payment gateways. It is designed to be easy to integrate with, so that only ended up adding <strong>222</strong> lines of code. <!--I started off with PayPal and added Recurly only later, which ended up saving money. Recurly does support PayPal too, but since I already had the code for it, I saw no reason to start paying extra fees to Recurly.--></p>
<h2>Gift cards</h2>
<p>I thought it would be nice if people could buy each other gift cards. These would be prepaid cards you could buy and send to friends as a special link. The person purchasing the gift would not even need to know the shipping address of the recipient.</p>
<p>This turned out to be dangerous and is currently not enabled. I'll tell you why next. In any case, I already wrote <strong>420</strong> lines of code for it.</p>
<h2>Fraud detection</h2>
<p>There are bad guys on the internet. Sometimes there are credit card leaks, some retailer gets their database hacked and as a result a bunch of valid numbers are released into the wild. Bad guys will then use the stolen card numbers to place purchases in online stores.</p>
<p><img alt="" src="/static/home_alone.jpg" /></p>
<p>Gift cards are doubly attractive fraud targets, because not only do the criminals get to check if their card numbers work, but also get the card which possibly has some resale value. The fraudster could potentially sell the cards on eBay, leaving me with a chargeback and a sad situation where the eBay customer thought they were buying a legit card.</p>
<p>For the time being gift cards are disabled, but before the year-end holidays I would like to re-enable them, probably with PayPal only, as it is much more fraud-resistant.</p>
<p>To try to tell the bad guys from the good guys, I have <strong>587</strong> lines of fraud detection code.</p>
<h2>Shopping cart</h2>
<p>After experiencing the problem with fraud, I had to stop using the Recurly shopping cart widget, because it wasn't fraud-resistant enough.</p>
<p>Instead I had to implement my own shopping cart flow to gather all possible signals which could help detect fraud more accurately. This added <strong>510</strong> lines of code.</p>
<p><img alt="" src="/static/shopping_cart.png" /></p>
<h2>Shipping</h2>
<p>After I get orders, I have to actually ship them too. With only a few subscribers, it would be easy to just deal with them manually. After you have hundreds of subscribers with thousands of past accounts also in your database, you want some kind of system to help you out. </p>
<p><img alt="" src="/static/japanese_candy_box.jpg" /></p>
<p>I wrote some code to go through all the accounts and try to figure out who I should actually be sending candy to. This is not always so straightforward, as there are some edge cases too. For instance accounts can be paused, there may be manual adjustments to them. In some cases I might want to send stuff to people even if their payment hasn't gone through yet, if I have good reason to believe that it will come in soon.</p>
<p>When you make a thousand shipping labels a month, you end up spending a lot of money on the physical labels themselves. I wrote some more code to try to make a compact PDF file that can be printed in one go on a smalle number of sticker sheets. Compared to printing one at a time, this is both more economical and faster.</p>
<p>Shipping-related code adds <strong>1165</strong> lines.</p>
<h2>Returns</h2>
<p>Sometimes the post office returns packages to us. The address may have been wrong, or maybe the customer moved or wasn't home to accept the package.</p>
<p>It's extra work to manually find out which account returned boxes are for, emailing the customer and adjusting their accounts. To cut down on this labor, I print barcodes on the boxes so we can just scan them when they get returned. Now it takes about 10 seconds to process a returned package, compared to 10 - 15 minutes digging through the database and writing emails manually.</p>
<p>This does add <strong>505</strong> lines to the codebase.</p>
<p><img alt="" src="/static/candy_japan_barcodes.png" /></p>
<h2>Admin tools</h2>
<p>There are all kinds of administrative tools as well. While you could look at the database directly, it's much more convenient to have a tool for viewing account information. You also want to be able to search for accounts based on name, address or subscription ID number. </p>
<p>Additionally reports need to be produced, for example for tax reasons. These admin tools add <strong>634</strong> lines of code.</p>
<h2>Marketing code</h2>
<p>If you put a website online, people will not just magically find you. In the beginning it's a bit easier to get visitors, as you can post a new site to places like Product Hunt. Some bloggers might also cover your site because it's new.</p>
<p>After you've been around longer, your site isn't news anymore and people won't hear about it unless you somehow keep promoting it. This costs money and effort. You end up writing code to try to measure and improve your marketing.</p>
<p>First of all, to know who my target audience is, I added a questionnaire step to the subscription flow. </p>
<p>You also need to know how much you can spend on ads, so you end up calculating things like retention rates. There are some ways to get more of visitors to convert, such as A/B testing and sending reminders to people who abandoned their carts.</p>
<p>Another way to market is to send free sample boxes to bloggers, but adding those orders manually to the database gets tiresome. I get around a dozen such requests each week. To make dealing with those take less time, there is an alternative sign-up flow only for bloggers. For this flow, there is no payment step, but instead I will look at each application and deny or accept it. </p>
<p>All this marketing stuff adds <strong>1219</strong> lines of code.</p>
<h2>Transactional emails</h2>
<p>When someone joins, you want to send them an automatic welcome email. When a reviewer is accepted, you want to send an email telling them that. Also a reminder so they wouldn't forget to write the review when the box arrives. </p>
<p>I do sometimes just contact people manually for fun, but there are also automatic emails that go out.</p>
<p>These add <strong>253</strong> lines of code.</p>
<h2>Total</h2>
<p><strong>Total</strong> <strong>8341 lines</strong> </p>
<p>How did you do? I'll rate your guess as "excellent" if you guessed between 5000 - 15000 lines. "Pretty good" if 3000 - 30000. "Meh" if 1000 - 50000. I'm flattered if you thought I could pull it off with less than 1000 lines. More than 50000? This isn't assembler.</p>
<!--When you scroll a bit lower, there will be a popup asking for your email. If you could share that with me, it would motivate me to blog more.-->

<h2>Learnings</h2>
<p>I spent a few months actively developing the codebase and about 5 years gradually adding stuff to it.</p>
<p>If you were starting a box now, I would definitely go with a platform such as <a href="http://www.subbly.co">Subbly</a> or <a href="http://cratejoy.com">CrateJoy</a>. </p>
<p>It would have made sense to split my site into a CMS (maybe WordPress) and have the subscription part be separate. Everything visible on the site (FAQ, candy images, landing page, blog) could have been managed through the CMS. This would have reduced some code that tries to be a CMS, but does a poor job at it while adding unnecessary complexity.</p>
<p>The app engine NoSQL data store is not good for running reports. You end up writing Python code which would be better expressed in SQL. Otherwise I am happy with choosing App Engine.</p>
<p>I don't know how I could have expected it, but somehow from the start I should have prepared for fraud. You want to at least keep an eye on any suspicious activity and react quickly if you start getting many chargebacks.</p>
<h2>Thank you</h2>
<p>If you would like me to send you some candy, please do <a href="https://www.candyjapan.com">sign up</a>. You can read more of my writings in the <a href="https://www.candyjapan.com/blog">Candy Japan blog</a> or on <a href="http://www.bemmu.com">my personal blog</a>. I also wrote a <a href="https://www.candyjapan.com/book">book about starting a subscription box</a>.</p>
<p>Thanks to <a href="https://www.upwork.com/freelancers/~017e241d50759eba20">Artem Olegovich</a> for the illustration. </p>
]]>
			</description>
		</item>

		<item>
			<pubDate>Thu, 29 Sep 2016 08:38:09 +0000</pubDate>
			<title>Kuinka kallista on asua Japanissa?</title>
			<link>http://www.candyjapan.com/kuinka-kallista-on-asua-japanissa</link>
			<guid>http://www.candyjapan.com/kuinka-kallista-on-asua-japanissa</guid>
			<description>
<![CDATA[
<p>Asumme Japanin Tokushimassa. Perheessämme on kaksi aikuista ja yksivuotias vauva.</p>
<p><img alt="" src="http://www.candyjapan.com/static/map_bemmu.svg" /></p>
<h2>Vuokra</h2>
<p>654 eurolla saimme vuokrattua 70 neliön kämpän. Paikallisesti tällaista asuntoa kutsutaan nimellä "mansion", mutta mistään kartanosta ei ole kyse. Ihan tavallinen kerrostaloasunto. Vaikka löytäisimme paremman paikan, tuskin muuttaisimme, koska Japanissa joutuu maksamaan useamman kuukauden vuokraa vastaavan rahasumman muuttaessa uuteen asuntoon. Kyseisiä rahoja ei myöskään saa takaisin, vaan ne annetaan vuokranantajalle "kiitoksena" tai "avainrahana" siitä, että saat asua siellä.</p>
<p><img alt="" src="http://www.bemmu.com/blogpics/japanese_room.jpg" /></p>
<p>Suomeen verrattuna yllätti, mitä asuntoon ei kuulu. Huonekaluja en odottanutkaan, mutta jääkaappia ja hellaa kyllä odotin. Ne piti ostaa itse erikseen. Loppuviimeksi asunnon viilennys ei myöskään kesällä riittänyt. Työnteko alkaa jossain määrin kärsiä, kun kotitoimiston lämpötila nousee 35 asteeseen. </p>
<p>Ostin lopulta omalla rahalla ylimääräisen ilmastointilaitteen. Niitä on nyt asunnossamme kolme. Lisäksi talvella ilmastointi ei riitä lämmittämään asuntoa, joten tuli ostettua myös muutama lämmitin, ja vielä lisäksi kuumavesipullo ja lämmittävä sähköpeitto. Japanissa useinkaan ei säädellä koko asunnon lämpötilaa, vaan pyritään viilentämään tai lämmittämään vain se paikka, jossa itse kulloinkin oleskelet.</p>
<p>Kun joskus muutamme täältä pois, joudumme jotenkin hankkiutumaan myös eroon jääkaapista, hellasta ja ilmastointilaitteista. Seuraava asuja joutuu sitten hankkimaan ne kaikki uudestaan. </p>
<h2>Netti</h2>
<p>Meille tulee valokuitu kotiin. Lisämaksusta siitä saisi nopeammankin, mutta meille riittää perustason 89 Mbps kumpaankin suuntaan. Hinta on 43 euroa kuussa.</p>
<p><img alt="" src="http://www.candyjapan.com/static/tokushima_internet_speedtest.png" /></p>
<h2>Sähkö, kaasu ja vesi</h2>
<p>Nämä maksavat yhteensä 190 euroa kuussa. Sähkön osuus on 42%, kaasu 45% ja vesi viimeisenä 13%. Suomessa asuva varmaan ihmettelee, että mitä sillä kaasulla tekee. Hella on kaasuhella ja myös vesi lämmittyy kaasulla.</p>
<h2>Terveysvakuutus</h2>
<p>Suomessa tämä sisältyy veroihin, mutta Japanissa maksetaan erikseen. Oli aika iso shokki, kun sain tästä ensimmäisen kuukauden laskun: 508 euroa. Sama summa pitää siis maksaa joka ikinen kuukausi. Se lasketaan tulojen perusteella, en tosin ole aivan ymmärtänyt millä kaavalla. </p>
<p>Jos ajattelit mennä Japaniin vain vuodeksi pariksi, niin maksu ei ehkä koske sinua. Itse olen asunut täällä jo niin kauan, että maksan myös verot ja muut tällaiset veroluontoiset maksut Japaniin. Veron maksaminen siirtyi Japaniin asuttuani siellä kolme vuotta (googleta "kolmen vuoden sääntö", jos haluat tietää tästä lisää).</p>
<p>Yksi tapa pienentää tätä maksua olisi kuulua johonkin ammattiliittoon. Itse yritin liittyä JAGDA-taitelijaliittoon, jonka kautta olisi saanut paljon halvemman vakuutuksen. Oman <a href="https://www.candyjapan.com">japanilaisen karkkikaupan</a> sivujen web designia ei kuitenkaan katsottu tarpeeksi "taiteeksi", jotta sen perusteella olisi saanut alennetun vakuutuksen. Olen itsekin samaa mieltä, mutta koska kyse on varsin isosta rahasta, ajattelin kuitenkin kokeilla josko maksua saisi tämän kautta alennettua. Opinpa ainakin sen, että jos yli 50% tuloistani tulisi web designista, niin sen perusteella liittoon olisi voinut liittyä.</p>
<p>Vaikka terveysvakuutus on kallis, se kattaa vain 70% lääkärikuluista. Eli joudut kuitenkin maksamaan vielä lisää, jos oikeasti sairastut. Jonkinlainen maksukatto ilmeisesti kuitenkin on, joten ihan jenkkitilanteisiin ei pitäisi joutua. Kustannukset ovat järkevästi hinnoiteltu. Kun kävin vartin vastaanotolla sairaalassa, se maksoi vakuutuksen jälkeen 10 euroa. Hammaslääkärissä käynti oli muistaakseni noin 35 euroa, sisältäen puudutuksen ja ilokaasun. </p>
<p><img alt="" src="/static/rautahampaat.jpg" /></p>
<p>Yllättävää oli kuitenkin, että hintaan sisältyy ainoastaan metallipaikat. Jos haluaa hampaan värisen paikan, se maksaisi noin 400 euroa lisää. </p>
<h2>Ruoka</h2>
<p>Vaimo yleensä kokkaa kotona ja aineksiin menee 377 euroa kuussa. Silloin harvoin kun käymme ulkona syömässä, se yleensä maksaa 5 - 15 euroa. Suomeen verrattuna ulkona ruokailu on halvempaa.</p>
<p><img alt="Udon-nuudelit" src="http://www.bemmu.com/blogpics/udon_noodles.jpg" /></p>
<p>Täällä on joka puolella kioskeja, jotka ovat aina 24/7 yötä päivää avoinna. R-kioskia vastaavia, mutta vähän isompia. Niistä tulee usein osteltua kaikenlaista pientä. Pienet ostokset kuitenkin kasautuvat, ja veikkaan tuhlaavani noin 265 euroa joka kuukausi melko turhiin ostoksiin. Eli tyyliin Häagen-Dazs -jäätelöön, Red Bulliin, karkkeihin, erikoisjugurtteihin yms. kivaan.</p>
<h2>Kännykkä</h2>
<p>Kun ottaa huomioon sekä laitteen että liittymän, meiltä kahdelta kuluu niihin 111 euroa kuussa.</p>
<p>Oma operaattorini on b-mobile, joka maksaa 22 euroa kuussa, mutta siihen ei sisälly puhelinta, joten laskin myös pari kymppiä uuden puhelimen ostamiseen noin joka kolmas vuosi.</p>
<p>Vaimon liittymä on DoCoMo, joka maksaa 71 euroa kuussa. Mielestäni se on liian kallis, mutta siihen sisältyy kyllä puhelin. Ostin juuri häälahjaksi vaimolle puhelimen, ja onnistuin painostamaan hänetkin vaihtamaan b-mobileen, koska se on kuitenkin pidemmän päälle paljon halvempi, vaikka ottaisi puhelimen ostamisenkin huomioon. DoCoMo on kuitenkin aika velmu siinä, että liittymää ei voi sulkea kuin tiettynä aikana kerran kahdessa vuodessa. Joten odottelemme nyt sitä päivää, jolloin liittymän saa sulkea.</p>
<p>Pre-paid SIM-kortteja täältä ei tunnu saavan yhtä helposti. B-mobilen sai ostettua netistä ja SIM-kortti tuli postissa, mutta sitäkin varten piti laittaa heille liitetiedostona kuva skannatusta passista. Joku näytti myös oikeasti tarkistavan passiskannauksen oikeellisuuden, sillä jouduin lähettämään kuvan uudestaan kun ensimmäinen lähettämäni kuva ei ollut tarpeeksi selkeä.</p>
<h2>Auto</h2>
<p><img alt="Suzuki Wagon R" src="http://www.bemmu.com/blogpics/suzuki_wagon_r.jpg" /></p>
<p>Jos asuisimme Tokiossa tai muussa suurkaupungissa, niin autoa ei tarvitsisi. Tokushima on kuitenkin niin maaseutua, ettei täällä ilman autoa oikein pärjäisi, varsinkaan nyt vauvan kanssa. Hankimme pikkuauton merkkiä "Suzuki Wagon R" kun muutimme tänne, mutta se alkaa olla nyt loppuun ajettu. Se maksoi ostaessamme 7000 euroa ja saimme siitä 5 vuotta ajoaikaa irti, eli 116 euroa kuussa. Bensaan menee noin 17 euroa kuussa, se on vähän halvempaa kuin Suomessa. Yleensä autolla ei juuri ajeta muualle, kuin vaimon työpaikalle.</p>
<h2>Vauva</h2>
<p>Lapsen kanssa rahaa menee monenlaiseen ennalta-arvaamattomaan ostokseen. Tuntuu että joka kuukausi on jokin yllättävä asia, joka vauvaan liittyen pitää ostaa. Ensin ostat ehkä autoon turvaistuimen, eivätkä rokotuksetkaan ole ilmaisia. Rahanmeno on hyvin vaihtelevaa, mutta kun ynnäsin viimeiset 10 kuukautta yhteen, niin satunnaisiin vauvamenoihin tuntuu menevän noin 91 euroa kuussa.</p>
<p><img alt="" src="http://www.candyjapan.com/static/totally_worth_it.jpg" /></p>
<p>Tähän ei kuitenkaan sisälly se suurin meno, eli päivähoito. Kun itse koodailen kotona ja vaimo on töissä, jonkun pitää huolehtia vauvasta. Tätä varten vaimon työpaikalla on kätevästi päivähoito, mutta se maksaa 442 euroa kuussa. Saattaa kuulostaa kalliilta, mutta esimerkiksi Hollannissa vastaava hoito maksaisi noin 1700 euroa kuussa.</p>
<h2>Yhteensä</h2>
<p>Satunnaiskulut kuten huonekalut, vaatteet, auton korjailu ja muut pienet menot lisäävät vielä loppukustannukseen 221 euroa.</p>
<p>Kun kaiken laskee yhteen, meidän kolmihenkinen perhe käyttää <strong>3035 euroa kuukaudessa</strong>. Tähän sisältyy siis vain täällä asuminen. Suomessa vierailu kaksi kertaa vuodessa kesällä ja jouluna tulee sitten erikseen.</p>
<p><em>Laskiessa oletin, että 1 EUR = 113 JPY</em></p>
<p>Toivottavasti tästä laskelmasta oli jollekin hyötyä. Jos olet kiinnostunut kokeilemaan japanilaisia karkkeja, käy katsomassa myös <a href="https://www.candyjapan.com">karkkikauppani sivu</a>. Sivut ovat nyt vain englanniksi, mutta lähetämme kyllä myös Suomeen.</p>
<p><img alt="" src="http://www.bemmu.com/blogpics/japanese_yen.jpg" /></p>
<p>Jos jaoit tämän artikkelin jonnekin, niin laitan mielelläni sinulle kiitokset tänne loppuun. Laita mailia me@bemmu.com. Kiitoksia saa toki myös <a href="https://www.candyjapan.com/what-it-costs-to-live-in-japan">enkkuversion</a> jakamisesta.</p>
]]>
			</description>
		</item>

		<item>
			<pubDate>Tue, 27 Sep 2016 05:50:20 +0000</pubDate>
			<title>How to Get Free Candy</title>
			<link>http://www.candyjapan.com/free-candy</link>
			<guid>http://www.candyjapan.com/free-candy</guid>
			<description>
<![CDATA[
<h2>Free candy is not free to us</h2>
<p><a href="/">Candy Japan</a> is a subscription box for Japanese candy. As a business, we cannot just send things to anyone for free. That would lose money and we have to eat, pay rent, host this website etc., so we can't go broke if we want to stay around!</p>
<p>However if you have some good way to promote Candy Japan, we may be able to give you free candy in exchange. For example if you have a YouTube channel, a popular Facebook page or a website related somehow to Japan or candy, then in exchange for promoting Candy Japan we may be able to send you a free box of candy.</p>
<h2>How to apply for free candy</h2>
<p>To apply, please <a href="https://www.candyjapan.com/review">enter your details here</a>. Be warned however that we do reject most applications, as it's not free for us to send these samples, and we will only send free candy if it seems very likely that the promotional value is higher than the cost of shipping you the box. So for example if you have a YouTube channel with only a few videos with less than a thousand views each, we are very unlikely to send you a free candy box.</p>
<p>If you don't have a way to promote us, please consider just begging someone for money and then just subscribing as usual <a href="/">here</a> :-)</p>
]]>
			</description>
		</item>

		<item>
			<pubDate>Tue, 27 Sep 2016 05:18:39 +0000</pubDate>
			<title>How to Write the Candy Emoji</title>
			<link>http://www.candyjapan.com/how-to-write-the-candy-emoji</link>
			<guid>http://www.candyjapan.com/how-to-write-the-candy-emoji</guid>
			<description>
<![CDATA[
<h1>🍬</h1>
<p><img alt="Candy Emoji" src="/static/candy_emoji.png" /></p>
<p>As Halloween nears, searches for how to type the 🍬emoji go through the roof. In the US this would be called "candy emoji", while in the UK it's "lolly emoji".</p>
<p>To include 🍬in your message, either just copy &amp; paste from this article, or follow the more advanced instructions below.</p>
<h2>Mac OS X</h2>
<p>On a Mac, you can press ⌘ + Control + Space bar to bring up the emoji selector. Bet you didn't know that existed.</p>
<p><img alt="Mac OS X emoji selector" src="/static/mac_emoji_selector.png" /></p>
<p>From there you can enter "candy" as search to bring it up.</p>
<p><img alt="Finding the candy emoji on Mac OS X" src="/static/candy_emoji_on_mac_os_x.png" /></p>
<h2>PC</h2>
<p>In Windows, look for the touch keyboard icon in the lower right of your screen. Click on that to bring up a keyboard selector and select the emoji mode, scroll until you find 🍬. This works at least in Windows 8 and 10.</p>
]]>
			</description>
		</item>

		<item>
			<pubDate>Fri, 23 Sep 2016 13:37:15 +0000</pubDate>
			<title>Do articles about Japan do better at night?</title>
			<link>http://www.candyjapan.com/do-articles-about-japan-do-better-at-night</link>
			<guid>http://www.candyjapan.com/do-articles-about-japan-do-better-at-night</guid>
			<description>
<![CDATA[
<p><img alt="" src="/static/do-articles-about-japan-do-better-at-night.jpg" /></p>
<p>Many factors affect the success of stories on <a href="http://news.ycombinator.com">Hacker News</a>. The <a href="http://www.righto.com/2013/11/how-hacker-news-ranking-really-works.html">basic formula</a> is based on the number of upvotes, adjusted with a time decay so that popular stories eventually leave the frontpage to make space for new ones. <a href="http://www.righto.com/2013/11/how-hacker-news-ranking-really-works.html">Stories may get penalties</a> based on title or overheated commenting activity. Flagging by users and <a href="https://techcrunch.com/2013/05/18/the-evolution-of-hacker-news/">voting ring detection</a> play a role as well. </p>
<p>Although <a href="http://i.imgur.com/SN5BuAJ.png">most posts go nowhere</a>, there is some correllation between posting time and chances of success. Below you can see a <a href="https://github.com/minimaxir/hn-heatmaps">chart compiled by Max Woolf</a> showing the chances of a post getting at least 10 upvotes, for each weekday and hour.</p>
<p><img alt="" src="http://i.imgur.com/MdUvMB9.png" /></p>
<p>I often write <a href="https://www.candyjapan.com/blog">stories related to Japan</a>, so I wanted to continue the investigation to see if there might be a country-specific element to the optimal posting time. Peak Hacker News usage times should differ for each country because of time zones. I'll start with UK as an example, you'll see why later on.</p>
<p><img alt="" src="/static/timezone_difference_uk_us_2.png" /></p>
<p>Assuming that people in the UK are more likely to upvote posts related to the area, posting when the highest number of people from the UK are looking at the <a href="http://news.ycombinator.com/new">new page</a> seems like the way to go.</p>
<p>The most accurate way to discover peak usage would be to look at IP addresses from Hacker News access logs, then map those to countries. Sadly I don't have access to those logs. </p>
<h2>Country-related postings as a proxy</h2>
<p>Assuming people are more likely to post local stories, looking at country-related posts should be a pretty good proxy for usage. What I mean is that if there are a lot of posts about "United Kingdom", "Britain", "British", "UK" or "England" in the titles, then maybe it's peak time over there.</p>
<p>Below is a plot of how many stories per hour were posted with those phrases in them. The time zone in this and all other charts is UTC, which in this case conveniently happens to be the UK time zone.</p>
<p><img alt="" src="/static/uk_stories_per_hour.png" /></p>
<p>This rather satisfying curve was based on about 6000 story submissions. Posting to Hacker News seems to happen mostly during working hours. You can see people gradually waking up starting from 7am, with peak usage happening at noon. There is a dip at 1pm, maybe for <a href="https://en.wikipedia.org/wiki/Tea_in_the_United_Kingdom#Tea_as_a_break">elevenses</a>?</p>
<p>Next comes the big question. Are UK-related stories more likely to succeed during peak hours? "Success" here is defined the same way as Max did with his chart, as a story that has 10+ points. For each hour I checked the percentage of stories that succeeded. You can see them below in red, overlaid on the previous graph so you can see the relation.</p>
<p><img alt="" src="/static/uk_hacker_news_success.png" /></p>
<p>While the graph has some strange quirks to it, I would still call it a rather nice fit.</p>
<h2>Japan</h2>
<p>Since I write many stories about <a href="/">Candy Japan</a>, the big question for me is whether an optimal time exists for making such posts. The answer is... rather unsatisfying. I wanted to show the nicer curves first.</p>
<p>Below you can see the posting activity for anything with "Japan" in the title. Again in UTC time zone.</p>
<p><img alt="" src="/static/japan_posting_activity.png" /></p>
<div id="showPopupHere"></div>

<p>So far so good. There is a clear peak at 3pm UTC, which in Japan is midnight. The 1581 posts this chart is based on is enough data to make a plot of posting activity, but it turned out not to be enough to make a nice plot of the success ratio. There are only about 15 stories per hour that have at least 10 points, making the chart too noisy to make much sense of:</p>
<p><img alt="" src="/static/success_of_hacker_news_stories_about_japan.png" /></p>
<p>It could be that the timezone doesn't really matter, because almost no-one living in Japan uses Hacker News and all related stories are actually posted from abroad. Another reason could be that Japan is just so interesting even to people not living there that there isn't much regional effect.</p>
<h2>Conclusion</h2>
<p>The best time to post about Japan remains a mystery. It's 7am UTC (4pm) if you believe the noisy graph, or 3pm UTC (midnight) if you would rather like to assume that the peak time is also the best time for Japan. </p>
<p>Thanks to <a href="https://www.upwork.com/freelancers/~017e241d50759eba20">Artem Olegovich</a> for the illustration work and to <a href="https://www.upwork.com/freelancers/~015e8ed35d75d0ffab">Qaisar Tariq</a> for GQL help.</p>
<p>Let me know in HN comments if you would like me to make a chart for your country.</p>
]]>
			</description>
		</item>

		<item>
			<pubDate>Fri, 19 Aug 2016 11:53:41 +0000</pubDate>
			<title>Japanese writing system basics</title>
			<link>http://www.candyjapan.com/%E5%8F%A3</link>
			<guid>http://www.candyjapan.com/%E5%8F%A3</guid>
			<description>
<![CDATA[
<p>The English alphabet has only 26 letters, which most kids can master with little difficulty. But we are adults now, why limit ourselves to the 26?</p>
<p>To be able to write text more efficiently, let's try introducing a new symbol. To keep things simple, I'll just make it a square: 口.</p>
<p>Since we already have symbols for all the sounds we can pronounce, let's use this symbol to encode an entire word instead. I'll pick the word "mouth".</p>
<h2>"口" = "mouth"</h2>
<p>Now instead of "mouth-to-mouth resuscitation", you could write "口-to-口 resuscitation". Since it's obvious from the context, we could even shorten that to just "口口 resuscitation" and save even more characters. Compact.</p>
<p>As another example, "I have no mouth and must scream" would become "I have no 口 and must scream".</p>
<h2>Conjugating verbs</h2>
<p>How can we write for instance "stop mouthing your words and speak up" or "she silently mouthed her answer"? </p>
<p>One option would be to just write "stop 口 your words and speak up" and "She silently 口 her answer", and leave it up to the reader to guess from context how to exactly read it.</p>
<p>To be more clear, we can add the conjugation part after the ideogram. So in the previous cases you would write "stop 口ing your words and speak up" and "She silently 口ed her answer".</p>
<h2>Introducing another symbol</h2>
<p>Happily just replacing "mouth" with our new symbol is working great so far, only requiring some extra characters after the "mouth" part such as "mouth" + "ed" or "mouth" + "ing". But in some cases it won't be as clean.</p>
<p>Suppose we introduced a symbol for the word "eat", with the past tense "ate". Since both of them are the same concept, it would be ideal to use the same character for both. But if you introduce a symbol that means both "eat" and "ate", how will you know which way to read it when you encounter it? </p>
<p>The answer is to first put the symbol, then also add the last letter at the end to disambiguate it. So if it's "eat", put a "t" after the symbol. In case of "ate", put an "e" after the symbol.</p>
<p>Now what would be a good symbol for "eat"/"ate"? I'll pick 食. When you want to say "eat", you'd write "食t" and for "ate" you'd write "食e".</p>
<h2>Plot twist time</h2>
<p>Did the character 食 for "eat"/"ate" look sort of familiar to you? </p>
<p>Well okay, I'll come clean. I've actually been secretly teaching Japanese to you. 口 actually really is the Japanese character for "mouth" and 食 really is the symbol for eating.</p>
<p>I wanted to fool you just for a bit, just so you would get some idea of how the Japanese writing system works, so you could appreciate how it works without having to learn a bunch of new grammar, vocabulary and characters.</p>
<h2>Thanks for reading</h2>
<p>Now you know the basics of how the Japanese writing system works. </p>
<p>I think you deserve a treat now, go to your fridge, put your favorite snack in your 口 and 食t it!</p>
<p><em><a href="http://www.bemmu.com">Bemmu</a> has been living in Japan for 7 years and studied Japanese as an exchange student for 2 years. He runs the fortnightly subscription service <a href="https://www.candyjapan.com">Candy Japan</a>.</em></p>
]]>
			</description>
		</item>

		<item>
			<pubDate>Fri, 12 Aug 2016 16:35:35 +0000</pubDate>
			<title>What it costs to live in Japan in USD</title>
			<link>http://www.candyjapan.com/what-it-costs-to-live-in-japan</link>
			<guid>http://www.candyjapan.com/what-it-costs-to-live-in-japan</guid>
			<description>
<![CDATA[
<p>How much does it cost to live in Tokushima, Japan total for two adults and a baby? </p>
<p><img alt="" src="http://www.candyjapan.com/static/map_bemmu.svg" /></p>
<p>Note: there is an updated 2019 version of this article available <a href="/life-in-japan/what-it-costs-to-live-in-japan-2019">here</a>.</p>
<h2>Rent</h2>
<p>For 654 EUR or 732 USD we are able to rent a nice 70 square meter / 750 square feet apartment, or "mansion" as they are called here. A mansion is a place in an apartment complex built from concrete, while an apartment is one built from wood.</p>
<p>I like to browse apartment listings in our area and our place seems to actually be on the larger and newer side. Even if we did find something better, we would be unlikely to move because of the various fees involved, which tend to equal several months worth of rent.</p>
<p><img alt="" src="http://www.bemmu.com/blogpics/japanese_room.jpg" /></p>
<p>Another surprise for me was all the things that are not included and which you are expected to move out with you when you leave. Furniture I can understand, but you are even expected to bring in and at the end uninstall your own stovetop and fridge. </p>
<p>I discovered that my home office would be a sauna in the summer, so I had to install an extra air conditioning unit. That will also have to be moved if we ever get a new place.</p>
<h2>Internet</h2>
<p>For 89 Mbps up &amp; down we are spending 43 EUR or 49 USD per month. This is not the fastest option that would be available, but we decided to rather spend less, as this is already unnecessarily fast.</p>
<p><img alt="" src="http://www.candyjapan.com/static/tokushima_internet_speedtest.png" /></p>
<h2>Electricity, gas and water</h2>
<p>For these combined the monthly cost is 190 EUR or 213 USD per month. Of these costs electricity is 42%, gas 45% and water comes at 13%.</p>
<p>I hadn't spent any money on gas before moving to Japan. It's used for the stove, but apparently the water heater also uses it. </p>
<h2>Health insurance</h2>
<p>To me this was the biggest sticker shock, which I didn't mention at all in my old post as I wasn't paying it yet, as I was still tax resident in Finland. Now I'm currently paying 508 EUR or 569 USD for my health insurance here. That's not a typo or a yearly cost, that's what it costs every single month. </p>
<p>I tend to think of it as just another form of tax, as it's based on your income. If you are thinking about moving to Japan, after you become tax resident (coming from Europe that seemed to typically switch after 3 years) this will be an expense you should mentally prepare yourself for.</p>
<p>The only way to reduce this which I could find was to join some kind of health insurance union. I went through the application process to join one for artists and web designers, but could not join as maintaining your own <a href="http://www.candyjapan.com">online candy store</a> did not count as being webdesigney enough. My accountant seemed to agree that I should just suck it up and pay the usual national insurance fee.</p>
<p>It covers 70% of medical costs, so even after paying the monthly fee, you still pay at hospitals too. It seems there is some cap on how much you have to pay at maximum if you get hospitalized for a longer time, although I don't quite understand how it works.</p>
<p>The costs seem to be very reasonable though, with a short doctor's visit to refill a prescription usually costing about 10 dollars after insurance. Dentists are also rather cheap, with visits seemingly never costing more than 50 dollars even with anesthesia and laughing gas (which you have to hunt for, most clinics don't offer it). The only surprise was that if you want a tooth-colored filling instead of a metal one, you would have to pay a big premium, around $500.</p>
<h2>Food</h2>
<p>My wife makes delicious home-cooked meals, for which our costs are 377 EUR or 337 USD per month. We almost never eat out, but when we do a single meal is usually about 7 - 15 USD per person. </p>
<p><img alt="Udon noodles are about the cheapest thing to eat out" src="http://www.bemmu.com/blogpics/udon_noodles.jpg" /></p>
<p>Confession: I have the bad habit of buying random snacks from the 24 hour convenience store strategically placed almost right next to our apartment, and run up a monthly bill of about 265 EUR or 297 USD there. </p>
<p>It's very easy to spend $10 a day in convenience stores. When I'm bicycling I'll often stop to buy a drink and a candy bar. In the evening we might want some Häagen-Dazs ice cream. In the morning I might want to start with a Red Bull (which I recognize as my worst spending habit, also unhealthy). At night I'll get peckish and get a yogurt. It adds up easily, from many seemingly small purchases.</p>
<p><img alt="I wish I could say I intend to stop this wasteful spend, but actually I think I could use a snack to power me through this blogpost right now!" src="http://www.candyjapan.com/static/wasting_money.jpg" /></p>
<h2>Phone</h2>
<p>Total monthly cost for our phones is 111 EUR or 124 USD.</p>
<p>I am on b-mobile, which costs 22 EUR or 25 USD, but doesn't include a phone, for which I estimate I'll have to budget an extra 20 bucks each month if I want to buy a new device every 3 years.</p>
<p>Wife's DoCoMo phone subscription is 79 USD or 71 EUR per month. To me that seems  insanely high, as I was used to paying around 10 USD back in Finland. It does include the phone though. Looking to switch wife also to b-mobile, but it is only allowed penalty-fee-free during one month every 2 years.</p>
<p>One peculiarity is that you have to show clear proof of identity when getting a SIM card. In Europe I would just get one at the counter of a kiosk or grocery store as casually as buying a pack of gum. Here I had to upload a scan of my passport when ordering one online and even had to re-upload when it wasn't clearly legible from the scan, so apparently they take it seriously and have people actually checking them.</p>
<h2>Car</h2>
<p><img alt="Suzuki Wagon R" src="http://www.bemmu.com/blogpics/suzuki_wagon_r.jpg" /></p>
<p>If we lived in Tokyo a car would be unnecessary, but here in Tokushima it is not really optional. We wouldn't be able to go anywhere without a car, especially not now with a baby.</p>
<p>Our Suzuki Wagon R is now nearing the end of its life. We got 5 years out of that car and I recall spending about 7000 EUR or 7800 USD on it, so that's about 116 EUR or 130 USD per month. Now we are looking to buy a new one, which will probably end up costing around 13000 EUR or 14530 USD. For that price you can get a new Mazda Demio. For the total I'll go with the old cost, as we haven't bought anything yet.</p>
<p>For fuel we spend 17 EUR or 19 USD per month. This is for wife's commute and short weekend trips. </p>
<h2>Baby</h2>
<p>There are all kinds of random things you end up buying when you have a child, with every month tending to have at least one random expensive thing to buy. One month it will might be a car seat, the next a bunch of vaccinations. It's very varied, but average spend has been 91 EUR or 101 USD per month based on the last 10 months. </p>
<p><img alt="" src="http://www.candyjapan.com/static/totally_worth_it.jpg" /></p>
<p>He just had his first birthday and just started daycare, which will additionally cost 442 EUR or 495 USD per month, so from now on for our son Aito we will likely be spending about 533 EUR or 596 USD per month.</p>
<h2>Total</h2>
<p>Misc things like furniture, clothing, fixing/inspecting the car etc. random expenses total around 221 EUR or 247 USD per month.</p>
<p>All in all living in Tokushima, Japan for our family <strong>costs around 3035 EUR or 3313 USD per month</strong>. I am only including essentials of living here. Biggest thing I am leaving out is foreign trips, because they aren't really a part of what "living in Japan" costs. When I wrote this I assumed 1 EUR = 113 JPY, 1 USD = 101 JPY.</p>
<p>I hope this was useful or interesting to you. Please do check out our <a href="https://www.candyjapan.com">monthly japanese candy subscription</a>, if that sounds interesting to you.</p>
<p><img alt="" src="http://www.bemmu.com/blogpics/japanese_yen.jpg" /></p>
<p><em>This was an update written from scratch to a <a href="http://www.bemmu.com/what-it-costs-to-live-in-japan">previous blog post</a>, which was generally well received, but did receive some criticism (mostly because I counted our expenses separately, so this time I combined them). Now that we've lived here in Tokushima for over 5 years, I thought it was time to post an update.</em></p>
]]>
			</description>
		</item>

		<item>
			<pubDate>Fri, 06 May 2016 02:11:13 +0000</pubDate>
			<title>Results from Candy Japan box design A/B test</title>
			<link>http://www.candyjapan.com/results-from-box-design-ab-test</link>
			<guid>http://www.candyjapan.com/results-from-box-design-ab-test</guid>
			<description>
<![CDATA[
<p><a href="/">Candy Japan</a> sends thousands of boxes of actual candy to people around the world by physical mail. I wanted to test whether a new brighter full-color package design would make customers less likely to cancel their subscriptions.</p>
<p>Our original box was just a dark colored parcel with no branding on it. I commissioned a new design and assigned customers randomly to either receive the new packaging (group A) or the old one (group B). </p>
<p><a href="/static/box_ab_test.jpg"><img alt="" src="/static/box_ab_test_600.jpg" /></a></p>
<p>Plain unbranded boxes go for just $0.34 a piece, while a box with a full-color illustration printed on the cover costs almost twice as much: $0.67.</p>
<p>This may not seem like such a big difference, but in absolute terms using the new box means around $500 less profit per month or roughly 10% of profit margin. </p>
<h2>Result</h2>
<p>The test ran for 4 months and 2 weeks. During this time 6458 packages were sent to 1075 distinct customers. Customers who started a subscription and canceled before receiving their first package were excluded from the test. Of the remaining customers 38.93% canceled during the test.</p>
<p>In group A <strong>38.27%</strong> or 168 of the 439 customers receiving the new package design canceled during the test.</p>
<p>In group B <strong>39.59%</strong> or 175 of the 442 customers receiving the old package design canceled during the test.</p>
<p>This is not a statistically significant difference. In a world where it makes no difference which package is sent, you would get a result as significant as this 80% of the time.</p>
<h2>Conclusion: no clear improvement to retention</h2>
<p>Will this mean Candy Japan will stop using the new packages? </p>
<p>Not necessarily.</p>
<p>Retention is not the only reason for having a nice package, and possibly not even the most important one. I can immediately think of at least three other effects which could be more important:</p>
<ul>
<li>YouTube unboxings may look more appealing and having the brand name on the box may remind viewers of where to go to subscribe.</li>
<li>Friends who come over to eat the candy with you will be able to see the company name on the box and may not have otherwise known where to go to subscribe.</li>
<li>When including product pictures on the homepage, a nicer box may persuade more people to sign up.</li>
</ul>
<p>Sadly the first two effects will only result in direct visits and seem to be impossible to measure. The last reason seems to be measurable, but in practice it would be difficult to take pictures in such a way that the only difference would be the package design.</p>
<p><a href="/static/army_pose.jpg"><img alt="" src="/static/army_pose_600.jpg" /></a></p>
<hr />
<p>Thanks to Marek Gibney (creator of <a href="http://www.productchart.com">www.productchart.com</a>) for calculating the p-value.</p>
<p>You can find the anonymized subscriber data and code for calculating the cancellation percentages <a href="https://gist.github.com/Bemmu/24f9b561c03a2ec992ed1f67eba33550">here</a>.</p>
<p>You can <a href="/">sign up here</a> if you would like to receive the candy.</p>
]]>
			</description>
		</item>

		<item>
			<pubDate>Wed, 04 May 2016 10:37:05 +0000</pubDate>
			<title>Feline cosplayer transforms into catbus</title>
			<link>http://www.candyjapan.com/feline-cosplayer-transforms-into-nekobasu</link>
			<guid>http://www.candyjapan.com/feline-cosplayer-transforms-into-nekobasu</guid>
			<description>
<![CDATA[
<p>Thousands of people attend the <a href="http://www.machiasobi.com/">MachiAsobi</a> anime event in Tokushima, Japan each year. This feline participant had transformed itself into the catbus AKA nekobasu from Ghibli animation film "My Neighbor Totoro", possibly with some help from its owner.</p>
<p><a href="/static/nekobasu.jpg"><img alt="catbus" src="/static/nekobasu_600.jpg" /></a>
<a href="/static/nekobasu2.jpg"><img alt="catbus" src="/static/nekobasu_2_600.jpg" /></a>
<a href="/static/nekobasu3.jpg"><img alt="catbus" src="/static/nekobasu_3_600.jpg" /></a></p>
<p>Pictures are originals taken by <a href="/">Candy Japan</a>, feel free to use but please link back.</p>
]]>
			</description>
		</item>

		<item>
			<pubDate>Sat, 30 Apr 2016 13:02:54 +0000</pubDate>
			<title>Tokyo patisserie offers sweets in the shape of zoo animals</title>
			<link>http://www.candyjapan.com/tokyo-patisserie-offers-sweets-in-the-shape-of-zoo-animals</link>
			<guid>http://www.candyjapan.com/tokyo-patisserie-offers-sweets-in-the-shape-of-zoo-animals</guid>
			<description>
<![CDATA[
<p><img alt="" src="/static/sheep_cake.jpg" /></p>
<p><em>Patisserie Swallowtail</em> in Tokyo, Japan is offering sweets shaped as zoo animals.</p>
<p><img alt="" src="/static/koala_cake.jpg" /></p>
<p>The cake shop located in Ikebukuro is offering a whole zoo of nicely designed wildlife sweets to pick from, all the way from tiger and monkey cakes to white chocolate elephants and almond lions, with even an orange and lemon slow loris mousse on offer. </p>
<p><img alt="" src="/static/patisserie_swallowtail_menu.jpg" /></p>
<p>They have even more super cute animals, <a href="http://www.sweetzoo.jp/">see them all here</a>. </p>
<p>Via <a href="http://patisserie-swallowtail.jp/topics/hands-ikebukuro.php#160325">http://patisserie-swallowtail.jp/topics/hands-ikebukuro.php#160325</a>, <a href="https://twitter.com/Hands_Ikebukuro/status/726223466265890817">https://twitter.com/Hands_Ikebukuro/status/726223466265890817</a></p>
]]>
			</description>
		</item>

		<item>
			<pubDate>Sun, 24 Apr 2016 07:34:12 +0000</pubDate>
			<title>Tokyo Dars Store $300 Chocolate Tiara</title>
			<link>http://www.candyjapan.com/dars-chocolate-tiara</link>
			<guid>http://www.candyjapan.com/dars-chocolate-tiara</guid>
			<description>
<![CDATA[
<p><img alt="" src="/static/dars_tiara.jpg" /></p>
<p>Chocolate company Morinaga opened a temporary pop-up <a href="/dars">Dars</a> brand store in Omotesando, Tokyo. The store was part of a promotion coinciding with "Dars day" and has already closed, but while it was open they had several special items for sale, the most grandiose of which was this $300 chocolate tiara.</p>
<p>See more pictures of the store at <a href="http://ameblo.jp/sweetsmode/entry-11963543916.html">http://ameblo.jp/sweetsmode/entry-11963543916.html</a>.</p>
<p><img alt="" src="/static/dars_store_clerks.jpg" /></p>
]]>
			</description>
		</item>

		<item>
			<pubDate>Sun, 24 Apr 2016 04:37:58 +0000</pubDate>
			<title>Dars Milk Chocolate</title>
			<link>http://www.candyjapan.com/dars</link>
			<guid>http://www.candyjapan.com/dars</guid>
			<description>
<![CDATA[
<p>Dars is a popular brand of chocolate in Japan that you can find in any shop, made by Morinaga. The basic varieties available everywhere are milk chocolate, white chocolate and dark chocolate.</p>
<p><img alt="Dars white chocolate package" src="/static/dars_white_chocolate.png" /></p>
<h2>Types of Dars chocolates available</h2>
<p>Besides the basic varities, these varieties also exist or have existed at some point: uji matcha (high-class brand of tea originating from south Kyoto), matcha milk, bitter chocolate, raspberry, affogato, crea hazelnut, queen of nuts, nuts &amp; fruits, salt, white cacao, limited edition gianduja (type of hazelnut chocolate), limited edition cocoa crush, and Hello Kitty Strawberry Milk. </p>
<p>Dars chocolates are specially designed to melt at 22 degrees celsius (71.6 fahrenheit).</p>
<p>There also exists a Dars drink and varieties of Dars ice cream (at least pino x dars and crunchy ice cream). As part of a Dars day promotion, for a time you could purchase a <a href="/dars-chocolate-tiara">$300 Dars chocolate tiara</a>.</p>
<p><a href="/dars-chocolate-tiara"><img alt="" src="https://www.candyjapan.com/static/dars_tiara.jpg" /></a></p>
<p>Via <a href="http://ameblo.jp/sweetsmode/entry-11963543916.html">http://ameblo.jp/sweetsmode/entry-11963543916.html</a></p>
<h2>Company behind Dars</h2>
<p>Dars is a product from the confectionery company Morinaga Seika, founded in 1899 and based in Tokyo. Artist Ayumi Hamasaki and olympic silver medalist figure skater Mao Asada work with Morinaga in their advertisements. Morinaga is the company responsible for introducing Valentine's Day in Japan as the day when women give men chocolate.</p>
<h2>History of Dars chocolate</h2>
<p>Dars came on sale in Japan in 1993 as a variation of a chocolate called "solid", which was already on sale since 1988. "Solid" had just a solid block of chocolate, but "Solid Dars" broke that up into a dozen pieces. The Japanese word "ダース" (dars) means "dozen". The "DARS" spelling was chosen as a combination of the Spanish word "DAR" (give) and the Latin word "ARS" (art / skill). Even their tagline used to be "there's 12 in the box - therefore dozen". The packaging used the English word DOZEN on the box instead of the current made-up word DARS.</p>
<p><img alt="" src="/static/dars_dozen.jpg" /></p>
<p>You can see musician Kenji Ozawa even spelling this out in a commercial by counting the Dars box contents piece by piece.</p>
<p><a href="https://www.youtube.com/watch?v=FS6iYHBzvkk"><img alt="" src="/static/dars_dozen_count.jpg" /></a></p>
<h2>Dars store</h2>
<p>There was a <a href="http://ameblo.jp/kuminseed/entry-11976825553.html">Dars brand store in Omotesando Hills</a>. Among other things you could purchase a chocolate tiara there for the low low price of $300. The store may pop up again, as it was a special brand promotion for Dars day 12/12 (December 12th, as "dars" means "12").</p>
<h2>Celebrities appearing in Dars commercials</h2>
<h3>1995 - 1996 Musician Kenji Ozawa</h3>
<p>Musician Kenji Ozawa was Morinaga's first celebrity to be used for promoting Dars chocolates. YouTube <a href="https://www.youtube.com/watch?v=j879qIGbFf0">has</a> several <a href="https://www.youtube.com/watch?v=FS6iYHBzvkk">Dars commercials with Kenji Ozawa appearing</a>.</p>
<p><a href="https://www.youtube.com/watch?v=qdy69vIJgn4"><img alt="Kenji Ozawa making an appearance in an early CM" src="/static/kenji_ozawa_dars_cm.gif" /></a></p>
<h3>1998 - 1999 Actor and singer Takeshi Kaneshiro</h3>
<p><a href="https://www.youtube.com/watch?v=Kcaa9NuowPk"><img alt="Takeshi Kaneshiro meets his clones in a Dars commercial" src="/static/takeshi_kaneshiro_dars_cm.gif" /></a></p>
<h3>2000 - 2007 Musical duo KinKi Kids</h3>
<p><a href="https://www.youtube.com/watch?v=tJut_xN4h7o"><img alt="KinKi Kids shrinks their clothes in a Dars commercial" src="/static/kinki_kids_dars_cm.gif" /></a></p>
<h3>2005 Actress Kumiko Aso</h3>
<p><a href="https://youtu.be/dypqxb5AAJg?t=607"><img alt="Kumiko Aso's Dars commercial" src="/static/kumiko_aso_dars_cm.gif" /></a></p>
<h3>2006 Actress Eri Fukatsu</h3>
<p><a href="https://www.youtube.com/watch?v=UncyB6ULZt8"><img alt="Eri Fukatsu in a Dars Commercial" src="/static/eri_fukatsu_dars_cm.gif" /></a></p>
<h3>2007 Singer/actress Ryoko Shinohara</h3>
<p><a href="https://www.youtube.com/watch?v=HqkKORB6uHY"><img alt="Ryoko Shinohara appearing in a Dars Commercial" src="/static/ryoko_shinohara_dars_cm.gif" /></a></p>
<h3>2008 Actors Yusuke Yamamoto and Junji Takada</h3>
<p><a href="http://www.tudou.com/programs/view/X1Afl0YLl2s/?FR=LIAN"><img alt="Yusuke Yamamoto and Junji Takada cooperating in a Dars Commercial" src="/static/yusuke_yamamoto_dars_cm.gif" /></a></p>
<h3>2008 "Country Musume" member Mai Satoda</h3>
<h3>2009 Actress/fashion model Asami Usuda</h3>
<h3>2009 Actor Masaki Okada</h3>
<h3>2010 - 2012 Actress Aoi Miyazaki (well-known for her role in "Nana")</h3>
<h3>2013 Actress/model Haru</h3>
<h3>2014 Model/actress/singer/designer Kiko Mizuhara</h3>
]]>
			</description>
		</item>

		<item>
			<pubDate>Thu, 21 Apr 2016 03:32:14 +0000</pubDate>
			<title>You can eat this piano</title>
			<link>http://www.candyjapan.com/you-can-eat-this-piano</link>
			<guid>http://www.candyjapan.com/you-can-eat-this-piano</guid>
			<description>
<![CDATA[
<p>Fancy hotel in Tokyo with a grand piano might remind you of Lost in Translation. While accurately reproducing the shape of a real grand piano, this chocolate piano is a scale model and is actually entirely edible. You can eat this piano at the <a href="http://en.palacehoteltokyo.com/restaurants-bars/pastry-shop/">Sweets &amp; Deli in Palace Hotel Tokyo</a> for the low low price of $60.</p>
<p><img alt="" src="/static/edible_grand_piano.jpg" />
<img alt="" src="/static/edible_grand_piano2.jpg" />
<img alt="" src="/static/edible_grand_piano3.jpg" /></p>
<p>Via <a href="http://mdpr.jp/gourmet/1577781">http://mdpr.jp/gourmet/1577781</a></p>
]]>
			</description>
		</item>

		<item>
			<pubDate>Thu, 21 Apr 2016 02:48:14 +0000</pubDate>
			<title>Adorable Japanese doggy desserts</title>
			<link>http://www.candyjapan.com/adorable-japanese-doggy-desserts</link>
			<guid>http://www.candyjapan.com/adorable-japanese-doggy-desserts</guid>
			<description>
<![CDATA[
<p><img alt="adorable japanese doggy desserts" src="/static/adorable-japanese-doggy-desserts.png" /></p>
<p>This à la mode "pomu pomu pudding" was just announced to go on sale in Japanese Mini Stop convenience stores starting April 26th. Mini Stop is hoping customers celebrating Japanese Children's Day on May 5th or Mother's Day on May 8th will buy it in droves. </p>
<p>Via <a href="http://mdpr.jp/gourmet/detail/1579464">http://mdpr.jp/gourmet/detail/1579464</a></p>
]]>
			</description>
		</item>

		<item>
			<pubDate>Fri, 08 Apr 2016 18:10:47 +0000</pubDate>
			<title>8 International Candy Subscriptions You Must Try At Least Once







</title>
			<link>http://www.candyjapan.com/8-international-candy-subscriptions-you-must-try-at-least-once</link>
			<guid>http://www.candyjapan.com/8-international-candy-subscriptions-you-must-try-at-least-once</guid>
			<description>
<![CDATA[
<p>There are candy subscription boxes from pretty much all over the world available on the Internet, including Mexico, Japan, Thailand, etc… They are perfect opportunities to try a selection of local sweets without actually making a trip to the destination. Plus, it makes up a great gift idea for any person with a sweet tooth in your life.</p>
<p>Let’s take a look at 8 of the most popular candy-related international subscriptionboxes.</p>
<h2><a href="https://candygerman.com/">Candy German</a></h2>
<p>Does the term “German candy” ring a bell to anyone? Probably not as much as brand names such as Haribo, Kinder or Ritter Sport do. But all of these now world-famous treats originated from Germany, and that is exactly what the company packs up in their monthly boxes. A bag of the infamous Haribo Gummy Bears, a bar of Ritter Sport chocolate, a Kinder egg, a pack of Leibniz cookies and many more less-known, but not less delicious brands of confections make up the Candy German subscription boxes. </p>
<p><img alt="" src="/static/candy_german.png" /></p>
<p>They provide free shipping worldwide and 6 to 8 items in every monthly package. The price for one month worth of treats is €29, which is about $32.43. Candy German webside also proposes 3 and 6 months plans that allow the customers to save up to $3 per box. It might seem pretty pricey compared to other subscription boxes, but the company sticks to the german quality standards- their website states that no package contains less than 1kg of candy. </p>
<p>As for the confections themselves- they are sure to delight you with their exquisite flavours and textures. Worth a try!</p>
<h2><a href="http://www.gummymunchies.com/">Gummi Munchies</a></h2>
<p>Speaking of Gummy Bears. Have you ever walked by one of those stores full of tall jars filled with multicolored gummies and thought “I want them all!”? Well, that’s what Gummi Munchies is here for. For only $21.95 a month, this company provides two pounds (~0.9kg) worth of mixed bulk gummies. </p>
<p><img alt="" src="/static/gummi_munchies.png" /></p>
<p>The best part is that you can mix and match your favorite flavors and shapes to create your own, unique mix that fits your tastes. You can choose from sour, fruity or sweet gummies, you can have bears, nature or marine shaped ones, or even a gluten-free alternative for those who keep their figure in check. </p>
<p>Even though the multi-choice option ruins a bit of the surprise factor, who doesn’t love a selection customized to one’s tastes? However, aside from the original bag of Gummi Munchies (the pick-and- mix one), the box also includes a jar of surprise candy and some gummies from a foreign country, to satisfy those who seek mystery and suspense in their subscription boxes.</p>
<p>The Gummi Munchies website is full of discount options and contests – customers can get 25% off the entire order just by following the company’s social media accounts. Now, there’s even a contest for the subscribers, the prize being a free 12-month supply of candy.</p>
<h2><a href="http://www.karepax.com">KarePax</a></h2>
<p>KarePax is a US based company that combines sweet treats and comic books in a mystery-type subscription box. Their treats come from all over the world- the contents of the previous boxes published on the website include Japanese Pocky and KitKat, candy corn flavored Oreos and chewy chocolate bars from the US. </p>
<p><img alt="" src="/static/karepax.png" /></p>
<p>Each package contains 11 to 13 full-size snacks, a handful of little candies from various countries and 3-4 comic books. For those who aren’t really into comics, KarePax offers the opportunity to get some treats doubled instead of them. On to the prices, a big box of sweets and geeky indie comics will cost you $26, with 3, 6 and 12 months plans available to choose from. However, for overseas shipping you will be charged an additional fee of $10.</p>
<h2><a href="https://omnombox.cratejoy.com/">OmNomBox</a></h2>
<p>OmNomBox is a subscription box company that includes candy from most Asian countries- China, Korea, Taiwan, and of course, Japan. While there are at least 10 Japanese-only sweets subscription boxes, OmNomBox appeals to its customers by including typical Korean and Taiwanese treats, such as honey flavored apple chips, probiotic strawberry yoghurt gummies and Pejoy biscuits. </p>
<p><img alt="" src="/static/omnombox.png" /></p>
<p>Never heard of Pejoy before? Look it up in the information provided, as every box comes with a detailed description of each snack and beverage! For instance, Pejoy is Pocky’s inside out version- a hollow biscuit stick with chocolate cream filling, much like a wafer roll. </p>
<p>Another specific of the OmNomBox is including a drink in each package - usually green tea from China or Taiwan, but various juices and soft drinks such as Ramune soda have also been featured. </p>
<p>To taste the confections of the Far East will cost you $25 a month, plus shipping fees if you live outside the US. The company offers a month-to- month auto-renewing plan, various coupon codes for discounts and opportunities for bloggers to get free boxes for public reviews.</p>
<h2><a href="https://www.oldbritishsweets.com">Old British Sweets</a></h2>
<p>For all the Harry Potter fans out there, you might want to take a look at this website.</p>
<p>Old British Sweets will give you the impression that it’s the online version of the Honeydukes sweets shop from the HP saga. With intriguing names such as Gobstoppers, White Mice and Dip Dabs, whimsical-looking pictures and mouthwatering flavors, the Old British Sweets are definitely worth a try. The company supports local candy making craftsmen and states that the best confectioneries are not the ones found among the aisles of a supermarket, but rather the ones crafted by hand. </p>
<p><img alt="" src="/static/old_british_sweets.png" /></p>
<p>For only £19.99 (~$31) you can receive 450g of Britain’s finest candy right at your door – that’s right, the shipping worldwide is free of any charge.</p>
<p>Such a festive subscription box is the perfect option for a gift as well. The website has a special option for sending gift packages, which does not automatically renew every month, as a normal subscription does. Old British Sweets is the only company on the subscription service market that provides this kind of traditional and handcrafted candy. </p>
<p>You might want to put one of their boxes on your next Christmas wishlist.</p>
<h2><a href="http://www.thesweetclub.co.uk/">The Sweet Club</a></h2>
<p>The Sweet Club is a customizable monthly box of treats from the UK. Much like the Gummy Munchies, the company allows its customers to choose from a variety of confectioneries to make their own box, suited entirely to their tastes. </p>
<p><img alt="" src="/static/the_sweet_club.png" /></p>
<p>For those who are confused by the multitude of items on the “menu”, The Sweet Club offers premade selections as well. A box typically includes 8 kinds of different treats(~100g of each) that you can pick from the website. What can you choose from? Well, pretty much any kind of candy you could think of. Chocolate, gummies, hard and soft candy, liquorice, fudge or lollipops – the menu on the website’s got all of them. </p>
<p>You can even choose specific types from these categories, for example the Chocolate section includes items such as Chocolate Covered Marshmallows, Chocolate Eggs, Chocolate Fudge, etc… Just add some sour jellies to dilute the sweetness and voila! You have a selection ready to be packed and dispatched to your home country. For £9.95  a month or £8.25 a fortnight, plus shipping fees outside the UK, you’ll get more than 800g of candy of your choice straight to yor doorstep. </p>
<p>You can update your selection every month or leave it to the company- they are sure to surprise you with one of the readymade selections!</p>
<h2><a href="http://www.treatsie.com">Treatsie</a></h2>
<p>For those who are less into gummies and jelly beans and love a more gourmet option when it comes to their sweets, Treatsie is the perfect choice. This smaller, but certainly more stylish box is sure to make the difference. What’s inside it is even more appealing – bars of red velvet milk chocolate, peanut butter cups with cinnamon and sea salt, lavender-infused caramel, etc.. </p>
<p><img alt="" src="/static/treatsie.png" /></p>
<p>Original American chocolate chip cookies have also been included previously. Such an exquisite selection will be shipped to you monthly for only $12, with 3 and 12 months plans also available. The company also provides a gift giving option, which is perfect for anyone with a sweet tooth in your life. Treatsie takes great care of their customer service. In the hot summer months, the boxes are shipped in radiant cool packs, that keeps the chocolate from melting and makes sure that the box reaches its destination in the best condition possible.</p>
<h2><a href="http://www.gypsytradingcompanysnacks.com/">Gypsy Trading Company Snacks</a></h2>
<p>The name of this subscription service says it all- their boxes are huge, treasure-chest like packages filled to the brim with fun, kitschy snacks from all over the world. Their treats come from the Far East, Central and South Americas, Europe and more. </p>
<p><img alt="" src="/static/gypsy_trading_company_snacks.png" /></p>
<p>Flavors and brands we’ve never seen in other subscription boxes include Indonesian Milkita Lollipops, Mexican Chili Rokas, Bon o Bon chocolates from Argentina, Taro Cream Wafers for Taiwan and many more. Each box contains at least one drink and some savory snacks as well. </p>
<p>The drinks are also very unique- ever tried Inca Kola from Peru or Chinese Apple Jasmine drink? </p>
<p>Gypsy Trading Company gives you the opportunity to taste them all! A small snack treasure chest includes 8-12 treats and a drink, and a big one can hold up to 20 treats and 2 drinks. For $20 a small chest or $29 a big one, you can try the flavors of faraway countries without having to leave your house. Plans for 3 and 6 months are also available both for the big and small boxes of treats, allowing you to save up to $27 on the entire purchase.</p>
<h2><a href="https://www.candyjapan.com">Candy Japan</a></h2>
<p>Candy Japan (our site) mails Japanese surprise sweets to subscribers around the world twice a month, with free shipping of mystery boxes no matter which country you are ordering from.</p>
<p><a href="https://www.candyjapan.com"><img alt="" src="/static/p2p_m.png" /></a></p>
<p>Japan has the most interesting sweets in the world, so if you are looking for an international candy subscription, this would be the one to start with. There are sweets with cute shapes that will make you go aww, bizarre flavors you cannot taste anywhere else, kits where some assembly is required before you get to eat your creation, even candy that make sounds or that you can otherwise play with.</p>
<p>Unlike most subscription boxes, <a href="https://www.candyjapan.com">Candy Japan</a> ships smaller boxes, but <strong>twice</strong> a month so that you will always have the next box to look forward to soon enough and to keep you from eating too much at once!</p>
<hr />
<p>The reason why the candy subscription services are so popular is obvious - everybody loves a sweet treat. However, everyone’s tastes differ when it comes to candy, and that’s why so many different companies have been appearing all over the internet. Do you love munching on gummies? Or would you rather have a fine selection of chocolates every now and then? Perhaps you want to try flavors from all over the world? </p>
<p>Got hungry after reading this? Don’t worry, there’s a candy subscription box out there which has got you covered.</p>
]]>
			</description>
		</item>

		<item>
			<pubDate>Tue, 05 Apr 2016 14:02:28 +0000</pubDate>
			<title>How Candy Japan got credit card fraud somewhat under control</title>
			<link>http://www.candyjapan.com/how-i-got-credit-card-fraud-somewhat-under-control</link>
			<guid>http://www.candyjapan.com/how-i-got-credit-card-fraud-somewhat-under-control</guid>
			<description>
<![CDATA[
<p>I started <a href="https://www.candyjapan.com">Candy Japan</a> in summer of 2011 with the idea of mailing Japanese sweets to subscribers around the world on a twice-monthly basis. It worked. Hundreds of people signed up through PayPal and we kept sending them crazy Japanese candy for years. </p>
<p>Not everyone is a big fan of PayPal. Imagined threat or not, it seemed risky to have all subscriptions depending on it. For these reasons I wanted it to be possible to sign up directly with a credit card as well. Just a form on the site where people could enter their payment details. </p>
<p>Back then it was still a fair bit of work to find a suitable credit card processor to accept payments directly on your site (<a href="https://stripe.com">unlike now</a>). I spent a ton of time going through different options, finally finding the <a href="http://www.wirecardbank.com">magic</a> payment <a href="https://recurly.com/">combination</a> that got me the form I wanted.</p>
<p>When I finally got things set up, I was so happy <a href="https://www.youtube.com/watch?v=Nye3m4bgNAo">we went to the beach and celebrated it with fireworks</a>. My understanding of how to charge cards at this point was "slap a <a href="https://www.recurly.com">Recurly</a> widget on your site and call it a day". </p>
<p>Things were good. Until they weren't.</p>
<h2>Data breaches affect your store, even if your own database is safe</h2>
<p>Credit card numbers leak. The source could be a compromised database, or just an untrustworthy employee <a href="http://www.eater.com/2015/9/10/9300939/mcdonalds-employees-skimming-customer-credit-cards">skimming cards to supplement their wage</a> at a reputable store. <a href="https://corporate.target.com/press/releases/2013/12/target-confirms-unauthorized-access-to-payment-car">Sometimes millions of card numbers are liberated in a single event</a>.</p>
<p>Because of these leaks, you can go out and buy valid card numbers for <a href="http://krebsonsecurity.com/2014/06/peek-inside-a-professional-carding-shop/">about $10 per number</a>, sold in bulk or in smaller packs of confirmed numbers. There are even people who <a href="http://krebsonsecurity.com/2012/01/flying-the-fraudster-skies/">travel the world using flight tickets purchased with stolen cards</a>.</p>
<p>There are plenty of cards already out there.  </p>
<p>In June 2015 I started feeling that fallout. I thought we were just having a particularly great month, but it <a href="https://www.candyjapan.com/candy-japan-hit-with-credit-card-fraud">turned out almost all of those new orders were just fraud</a>. It cost thousands of dollars in fees and lost product.</p>
<p>It wasn't a single event either, in fact it is still happening even as I write this. On each fraud attempt I get a notification, and it's blinking often enough that I'm tempted to turn that off. At this point the problem is so bad that when I get a new candy subscriber, it is as likely to be fraud as it is to be a real order.</p>
<p><img alt="" src="https://www.candyjapan.com/static/duplicate.jpg" /></p>
<h2>Trying to fix the issue</h2>
<p>My initial reaction was to just turn off credit card orders completely, reverting to PayPal only. After this the amount of new subscribers turned into decline for the first time. Partly because not everyone likes PayPal, but also because I started feeling burned out and spent less time promoting the business.</p>
<p>After recollecting my thoughts, I started reading more about what this fraud is and the motivations of the people behind it. I asked around online and even gave a presentation at a Hacker News meetup to solicit some ideas. </p>
<p>Mostly the suggestions involved either <strong>signals</strong> for trying to guess which orders might be fraud, or <strong>countermeasures</strong> to try to make things harder for the fraudsters. </p>
<p>Some examples of <strong>signals</strong> are checking if many orders originate in a short span of time from the same IP address, whether the IP address country same as the shipping address country, is the email from an anonymous provider such as yopmail and so on.</p>
<p>The problem with signals is that the fraudsters also know about them, and will quickly adapt when they notice you are checking them. It took less than a day for them to start generating new IP addresses for every order once I banned multiple orders in succession from same IP. Same thing when I started requiring a verified email address. They would just generate those on hotmail, outlook or by using throwaway email services.</p>
<p><strong>Countermeasures</strong> try to make things harder for the fraudster. The huge issue with these is that you are generally also making things harder for legitimate customers and losing sales as not everyone is willing to jump through fire-lit hoops just to get some candy. This might not seem like a big deal, but it can affect the cost of acquiring customer such that you can no longer afford to promote your site. Some examples are requiring email address verification, connecting with Google+ or Facebook account, SMS / phone verification, captchas and so on.</p>
<h2>Key insight #1</h2>
<p>Imagine you're in a war. A sniper shot just barely misses you and you take cover. You don't then stand up, spread your arms and shout "I'm still alive!". You want them to think they got you.</p>
<p>On a whim during Christmas holiday in Finland I emailed <a href="https://sivers.org/">Derek Sivers</a> to ask how he had solved the problem for his store <a href="http://www.cdbaby.com/">CD Baby</a>. After flying back to Japan to spend the New Year with my wife's family, I checked my email and was thrilled when I actually got a reply from him! </p>
<p>Characteristically it is also one of the nicest emails I have ever received. It contained a ton of great information, but one insight stood out in particular: don't let the fraudsters know whether their order succeeded.</p>
<p>If you suspect an order is fraud, don't go out and say to the criminal "hey, I declined your super suspicious order!". Instead, play dead. Pretend they got you. Tell them "thank you for your order", behaving exactly the same way as if it really was a successful order. </p>
<p>Now if criminals are using your site to check validity of card numbers... well they can't do that anymore, because it looks like every card they try is valid. If on the other hand they are really trying to get free candy with a stolen card, they'll hopefully be happy after their initial "success" and go away.</p>
<h2>Key insight #2</h2>
<p>Sadly the Recurly widget wouldn't allow me to play dead so easily, and would rather give fraudsters instant feedback of the success of their charges. I had to do a deeper API integration that took longer than I had hoped for, but I learned another useful thing on the way.</p>
<p>To avoid risking a data breach, you don't ever want to store or even see card numbers hit your server. When you have a payment form that allows typing in a credit card number, you "tokenize" the numbers first. As an example, suppose a customer is typing in the number  “1444–4444–4444–4444”. When they hit "submit", you pass the number to a trusted third card number vault, which turns it into a token such as“abcdefGHJIJ1234”. </p>
<p>What's so great about tokens? Tokens are pointers to card numbers not stored on your own server. Whenever you want to charge a card, instead of the number you transmit the token. Unlike card numbers, tokens are only valid for a number of minutes. As they are temporary, they are much less risky to store. If your database got leaked, the attackers would not be able to charge any cards.</p>
<p>Token expiration is a strength, but to me it seemed it could also be a challenge. I wanted to be able to manually confirm any orders before letting them through (to avoid any chargeback fees), but as the tokens are only valid for a number of minutes there wasn't enough time for any manual checking.</p>
<p>Reading up more on the API I learned that while you really do need to use the token within the time limit (20 minutes for Recurly), setting up a charge that happens in the future also counts as "using". Now when a new order comes in, I tell Recurly "charge this token 2 weeks from now". Now I have plenty of time to read the orders before they are actually charged, and this works out just fine since we only ship candy out twice a month in any case.</p>
<h2>Conclusion</h2>
<p>By not sharing order success with potential fraudsters, using delayed charging of cards and looking at signals for hints on which orders may be fraudulent, I am now at a point where I have been able to re-enable credit cards. Whether this will reduce fraud to a tolerable level or if I will need to go PayPal-only again will remain to be seen. </p>
<p>If you would like me to send you some candy, you can <a href="https://www.candyjapan.com">order here</a>. If it's all the same to you, use PayPal so I won't have to manually check your order :-)</p>
<p><img alt="" src="https://www.candyjapan.com/static/dog_with_candy_japan_box.jpg" /></p>
]]>
			</description>
		</item>

		<item>
			<pubDate>Sun, 07 Feb 2016 12:08:48 +0000</pubDate>
			<title>Running costs for Candy Japan</title>
			<link>http://www.candyjapan.com/running-costs-for-candy-japan</link>
			<guid>http://www.candyjapan.com/running-costs-for-candy-japan</guid>
			<description>
<![CDATA[
<p><a href="http://www.candyjapan.com">Candy Japan</a> sends sweets from Japan to subscribers around the world on a twice-monthly basis. I've been running it as a kind of business experiment and openly blogging about all aspects of it.</p>
<p>In this post I'll do a behind-the-scenes cost breakdown inspired by the <a href="http://cushionapp.com/expenses/">CushionApp expense report</a>. As we are dealing with physical items here for Candy Japan it's a bit more complicated.</p>
<p>But I'll start with the software part of it.</p>
<p><img alt="" src="/static/software.png" /></p>
<h1>Basecamp</h1>
<p>I was paying $20/month for the project-management tool <a href="https://basecamp.com/">Basecamp</a>, until realizing how silly it is to pay for something that was basically just my own personal todo list. I replaced it with a text file, but will likely continue using it if later on I actually have a team to communicate with. </p>
<h1>CCC, Dropbox</h1>
<p>I stopped living dangerously and started taking proper backups of the site and codebase with Time Machine, Dropbox and additionally <a href="https://bombich.com/">Carbon Copy Cloner</a> (~$40 one-time payment). The cool thing about CCC is that it takes backups incrementally, while still allowing you to boot off the external disk. That way you should be up and running quickly if your original drive fails.</p>
<h1>CrateJoy, Subbly.co</h1>
<p>When I started there were no easy-to-use subscription platforms available. Nowadays there are a few, so to see what they had to offer I signed up and kicked the tires of <a href="https://www.cratejoy.com/">CrateJoy</a> (YC S13) and <a href="http://www.subbly.co/">Subbly.co</a> for a few months. They are priced based on subscriber numbers. Here's a comparison chart from <a href="https://candyjapan.com/book/">my book</a>:</p>
<p><img alt="" src="/static/pricing.png" /></p>
<p>I didn't end up switching yet, as it seemed I would end up writing some glue code to keep the current non-Stripe subscriptions going. There would likely be other migrations to do, such as rewriting templates and importing everything over. </p>
<p>Perhaps a bit of <a href="http://skepdic.com/sunkcost.html">sunk cost fallacy</a> and <a href="https://en.wikipedia.org/wiki/Not_invented_here">NIH</a> going on as well.</p>
<h2>Google App Engine</h2>
<p>I'll be the first to admit that learning Python on top of <a href="http://appengine.google.com">GAE</a> just for Candy Japan would have been total overkill. I just happened to be familiar with the stack from past projects, so it was easy to keep using it. </p>
<p>Here's the 164.17 USD bill for the year:</p>
<p><img alt="" src="/static/gae_bill_2015.png" /></p>
<p>As you can see it's not even really optimized. A lot of the bandwidth is from accidentally including full images in RSS feed as data URIs, all served each time the RSS feed was refreshed. Oops.</p>
<p>The nice thing about GAE was that I've had basically no downtime and haven't had to configure anything or worry if the site would hold up to slashdotting, as it autoscales.</p>
<h2>Irccloud</h2>
<p>Perhaps not strictly a Candy Japan cost, but please don't make me go back and redo my chart. </p>
<p><a href="https://www.irccloud.com">Irccloud</a> lets me hang out on the #startups channel on IRC FreeNode without losing chat history and ask for feedback on these posts.</p>
<p><img alt="" src="/static/irccloud.png" /></p>
<h2>Mailchimp</h2>
<p><a href="http://mailchimp.com/">Mailchimp</a> is a tool for composing and sending email newsletters.</p>
<p>They have a free tier and I had planned to stay under it. Then one month I went over the limit and discovered that once you go paid, you can't go back.</p>
<p>The chimp outwitted me.</p>
<p><img alt="" src="/static/mailchimp.png" /></p>
<h2>Zendesk</h2>
<p>You can start doing customer support just fine through plain email, but after you get a bit more volume and want to hire someone to help, you need to be able to share the task somehow. <a href="https://www.zendesk.com/">Zendesk</a> has the additional benefit that Facebook page messages and tweets can all go to the same place.</p>
<h1>Are you watching closely?</h1>
<p>All of these costs. I'm going to make them disappear.</p>
<p><img alt="" src="/static/prestige.png" /></p>
<p>Yes, you, <a href="http://www.kalzumeus.com/">Patio11</a>, sitting there in your mansion in Tokyo, reading my blog and at this point thinking how insignificantly low all of these software costs are. All of the above put together is barely visible when you look at the big picture.</p>
<h2>Candy Japan total expenses</h2>
<p><img alt="" src="/static/overall_costs.png" /></p>
<p>The chart above includes not only software expenses, but everything else as well. See that little arrow pointing at the red slice in the upper right? That's all of the software costs from above.</p>
<p>Everything else is non-software. </p>
<p>Well, except <a href="http://www.recurly.com">Recurly</a>, but as payment middleware you might see that more as a transaction fee.</p>
<h2>Conclusion</h2>
<p>Software and servers are really cheap now. Actually the clip art of that crayon arrow used in the chart cost more than the monthly bill from App Engine. </p>
<p>If you are writing your own SaaS and thinking what to charge, your customers may not be as price sensitive as you might assume. </p>
<p>It doesn't take a very large increase in sales or a big savings in time to justify spending some more. </p>
<h2>Thank you for reading</h2>
<p>If you would like me to send you some candy, you can <a href="http://www.candyjapan.com">subscribe to Candy Japan here</a>. </p>
]]>
			</description>
		</item>

		<item>
			<pubDate>Thu, 17 Dec 2015 00:55:23 +0000</pubDate>
			<title>Candy Japan 2015 year in review - part 2</title>
			<link>http://www.candyjapan.com/2015-year-in-review-part-2</link>
			<guid>http://www.candyjapan.com/2015-year-in-review-part-2</guid>
			<description>
<![CDATA[
<div style="font-family: 'Lucida Grande', Verdana, 'Lucida Sans Regular', 'Lucida Sans Unicode', Arial, sans-serif; font-size: 22px; line-height: 33px;"><div>This is a continuation from the <a href="http://www.candyjapan.com/2015-year-in-review">2015 year in review</a> post. From here on I'll give you a bit of laundry list of other stuff that also happened besides the major items of CC fraud, tax issues and writing a book.</div><br><div><div><b>Improved customer support</b><br></div><div><b><br></b></div><div>I hired my first customer support person on UpWork and had a very positive experience. Now I am spending a lot less time answering email and customers are getting their responses faster as well.</div><br><div><b>Automated returns</b></div><div><b><br></b></div><div>When there is a fraudulent order with an invented address, all those packages are returned to me. When you get dozens of returns, it quickly fills up a residential mailbox. There's also work involved properly noting which accounts the returns came from and proper disposal of the boxes. I managed to automate this by having a barcode behind each box, which a helper scans so that I no longer need to receive the actual physical boxes.&nbsp;</div><br><div>Great time saving success! If the return is from a legit customer who just entered their address wrong, they are even automatically issued a gift card valid for an extra box in the future.<br></div></div><br><div><b>Just the usual day-to-day operations</b><br></div><div><br><div>As we are sending new items every two weeks, just looking for them takes a fair bit of time. I want to make sure there is always a long enough queue of confirmed items, so that the service can continue running smoothly.&nbsp;</div><br><div>Also involved is paying for the items (in cash, in person each time), postage (this one now happens automatically) and packing materials (and making sure there is enough). I need to generate and read through the shipping list each time, to make sure addresses are correct.&nbsp;</div><br><div>Besides the items themselves, we do a newsletter each time about the items. For that I have hired a writer, but I still do the final checking and sending myself so that I can only blame myself if the information is wrong.</div></div><br><div><b>Failed acquisition of an anime box</b></div><div><b><br></b></div><div>One day while browsing Flippa I noticed a subscription box business for sale, which seemed like a good fit for me. It was an anime box where subscribers were getting monthly good related to various series each month. I figured I could just send those from Japan and the business was very reasonably priced (previous owner seemed tired of running it), so I bought it.&nbsp;<br></div><br><div>Even before noticing this business for sale, I had already considered starting an anime box. This way we got a running start by having 70 initial subscribers already paying for it.</div><br><div>However it turned out to be difficult to maintain the quality of the box while sourcing items profitably from Japan (they had been shipping from US before and buying from local wholesalers). While it was profitable, I wasn't happy with the quality of items we could offer and promoting the business wasn't motivating, as any promotional activity I'd spend on it I would rather be spending on promoting Candy Japan instead.</div><br><div>For these reasons I decided to shut it down after a few months, but not before making the final mistake of sending the final items twice to subscribers (oops!). The way that happened is that after the shipment went out, instead of post office giving the tracking codes to me, they went to my supplier who did the packing. I neglected to ask for the receipt, which resulted in the items not being marked as shipped.&nbsp;</div><br><div>Later on when I made the decision to shut down the site and was about to cancel all accounts, I noticed the unshipped items and sent those. So they ended up getting sent twice, a mistake of about ~$1500. However from the customer point of view, it might be the best product shutdown ever.</div><br><div>At least I learned a lot. In particular how to use CrateJoy and how involved it is to transfer ownership of an existing box business (it wasn't too painful). These provided a lot of material for the book.</div><br></div><div style="font-family: 'Lucida Grande', Verdana, 'Lucida Sans Regular', 'Lucida Sans Unicode', Arial, sans-serif; font-size: 22px; line-height: 33px;"><b>More stuff that didn't pan out</b></div><div style="font-family: 'Lucida Grande', Verdana, 'Lucida Sans Regular', 'Lucida Sans Unicode', Arial, sans-serif; font-size: 22px; line-height: 33px;"><br></div><div style="font-family: 'Lucida Grande', Verdana, 'Lucida Sans Regular', 'Lucida Sans Unicode', Arial, sans-serif; font-size: 22px; line-height: 33px;">We still have the same arrangement for getting candy as we did in the beginning, just buying all the stuff from a supermarket with a slight discount. We found an online wholesaler, but looking at their prices they were often not much different. Also visited some in person, but could not find one where we could actually buy from. If I wanted to save money here, the key may actually be to spend some time doing price comparison between all sources for each product.</div><div style="font-family: 'Lucida Grande', Verdana, 'Lucida Sans Regular', 'Lucida Sans Unicode', Arial, sans-serif; font-size: 22px; line-height: 33px;"><br></div><div style="font-family: 'Lucida Grande', Verdana, 'Lucida Sans Regular', 'Lucida Sans Unicode', Arial, sans-serif; font-size: 22px; line-height: 33px;">I also spent a ton of time thinking about how I really SHOULD be producing more content for Candy Japan, really getting into AdWords / Facebook ad optimization, producing YouTube content etc., but then didn't really take the time to do much of it. I did do some basic SEO fixes, shut down some unprofitable ad campaigns, commissioned some uninspired content and learned how to use a DSLR camera properly, but didn't get to the point of having returns from any of this activity.</div><div style="font-family: 'Lucida Grande', Verdana, 'Lucida Sans Regular', 'Lucida Sans Unicode', Arial, sans-serif; font-size: 22px; line-height: 33px;"><br></div><div style="font-family: 'Lucida Grande', Verdana, 'Lucida Sans Regular', 'Lucida Sans Unicode', Arial, sans-serif; font-size: 22px; line-height: 33px;">Got contacted by a Japanese TV station wanting to do a bit about Candy Japan, but they wanted to shoot us packing boxes and the supermarket I'm working with didn't like the idea, so that was dropped.</div><div style="font-family: 'Lucida Grande', Verdana, 'Lucida Sans Regular', 'Lucida Sans Unicode', Arial, sans-serif; font-size: 22px; line-height: 33px;"><br></div><div style="font-family: 'Lucida Grande', Verdana, 'Lucida Sans Regular', 'Lucida Sans Unicode', Arial, sans-serif; font-size: 22px; line-height: 33px;"></div><div style="font-family: 'Lucida Grande', Verdana, 'Lucida Sans Regular', 'Lucida Sans Unicode', Arial, sans-serif; font-size: 22px; line-height: 33px;"><b>Obsessed about competitors some more</b></div><div style="font-family: 'Lucida Grande', Verdana, 'Lucida Sans Regular', 'Lucida Sans Unicode', Arial, sans-serif; font-size: 22px; line-height: 33px;"><br></div><div style="font-family: 'Lucida Grande', Verdana, 'Lucida Sans Regular', 'Lucida Sans Unicode', Arial, sans-serif; font-size: 22px; line-height: 33px;">As&nbsp;<a href="http://www.candyjapan.com/nobodys-going-to-steal-your-idea">I wrote before</a>, Candy Japan is now not the only service which is shipping out Japanese candy on a subscription basis. I compiled&nbsp;<a href="http://www.candyjapan.com/japanese-candy-boxes">this list of Japanese candy boxes</a>, and there are at least 20 such services now. I've browsed a bit around the sites, and many of them seem to be very good (better?).&nbsp;<br></div><div style="font-family: 'Lucida Grande', Verdana, 'Lucida Sans Regular', 'Lucida Sans Unicode', Arial, sans-serif; font-size: 22px; line-height: 33px;"><br></div><div style="font-family: 'Lucida Grande', Verdana, 'Lucida Sans Regular', 'Lucida Sans Unicode', Arial, sans-serif; font-size: 22px; line-height: 33px;">One evening I even put my spy gear on and did some research on them using semrush and whatrunswhere. I can't say I learned much, except that "japanese snacks" is actually as important a term to rank for as "japanese candy" is. It seemed that other boxes are not engaging in much advertising and didn't really seem to have any surprising SEO secrets either.</div><div style="font-family: 'Lucida Grande', Verdana, 'Lucida Sans Regular', 'Lucida Sans Unicode', Arial, sans-serif; font-size: 22px; line-height: 33px;"><br></div><div style="font-family: 'Lucida Grande', Verdana, 'Lucida Sans Regular', 'Lucida Sans Unicode', Arial, sans-serif; font-size: 22px; line-height: 33px;">Probably the biggest thing they are doing right is having different tiers. I'm definitely leaving money on the table by just having a single tier, while I should try to get every customer to sign up to their appropriate subscription level. There are also many items I could be sending if I only had a higher budget, so I could truly even offer more exclusive items, besides just sending bigger boxes of the same.&nbsp;</div><div style="font-family: 'Lucida Grande', Verdana, 'Lucida Sans Regular', 'Lucida Sans Unicode', Arial, sans-serif; font-size: 22px; line-height: 33px;"><br></div><div style="font-family: 'Lucida Grande', Verdana, 'Lucida Sans Regular', 'Lucida Sans Unicode', Arial, sans-serif; font-size: 22px; line-height: 33px;">For example regional items are very interesting, but usually also expensive. Each prefecture in Japan has their own items, but those tend to cost about ~1500 each, which just isn't compatible with our current budget. So maybe I should have a tier for that.</div><div style="font-family: 'Lucida Grande', Verdana, 'Lucida Sans Regular', 'Lucida Sans Unicode', Arial, sans-serif; font-size: 22px; line-height: 33px;"><b><br></b></div><div style="font-family: 'Lucida Grande', Verdana, 'Lucida Sans Regular', 'Lucida Sans Unicode', Arial, sans-serif; font-size: 22px; line-height: 33px;"><div>I even met some of the other founders in person, cool guys (hi Hiroki &amp; Javi!).</div><br></div><div style="font-family: 'Lucida Grande', Verdana, 'Lucida Sans Regular', 'Lucida Sans Unicode', Arial, sans-serif; font-size: 22px; line-height: 33px;"><b>Started a physical A/B test</b></div><div style="font-family: 'Lucida Grande', Verdana, 'Lucida Sans Regular', 'Lucida Sans Unicode', Arial, sans-serif; font-size: 22px; line-height: 33px;"><br></div><div style="font-family: 'Lucida Grande', Verdana, 'Lucida Sans Regular', 'Lucida Sans Unicode', Arial, sans-serif; font-size: 22px; line-height: 33px;">We finally got custom boxes designed, but they are more than twice as expensive as the ones we were using before. To avoid throwing away this money for no reason, I decided to start an A/B test where half of subscribers get the new package and half get the old one. If it improves retention enough, then I'll go with the new design.</div><div style="font-family: 'Lucida Grande', Verdana, 'Lucida Sans Regular', 'Lucida Sans Unicode', Arial, sans-serif; font-size: 22px; line-height: 33px;"><br></div><div style="font-family: 'Lucida Grande', Verdana, 'Lucida Sans Regular', 'Lucida Sans Unicode', Arial, sans-serif; font-size: 22px; line-height: 33px;"></div><div style="font-family: 'Lucida Grande', Verdana, 'Lucida Sans Regular', 'Lucida Sans Unicode', Arial, sans-serif; font-size: 22px; line-height: 33px;"><b>Next</b></div><div style="font-family: 'Lucida Grande', Verdana, 'Lucida Sans Regular', 'Lucida Sans Unicode', Arial, sans-serif; font-size: 22px; line-height: 33px;"><br></div><div style="font-family: 'Lucida Grande', Verdana, 'Lucida Sans Regular', 'Lucida Sans Unicode', Arial, sans-serif; font-size: 22px; line-height: 33px;">I should try to do more conversion optimization, such as doing more email marketing to leads signing up on the site. Should improve communication also with customers who have signed up, as some cancellations are probably due to people just getting antsy about their first box arrival taking pretty long to come from Japan.</div><div style="font-family: 'Lucida Grande', Verdana, 'Lucida Sans Regular', 'Lucida Sans Unicode', Arial, sans-serif; font-size: 22px; line-height: 33px;"><br></div><div style="font-family: 'Lucida Grande', Verdana, 'Lucida Sans Regular', 'Lucida Sans Unicode', Arial, sans-serif; font-size: 22px; line-height: 33px;">Should try a higher-priced tier for regional items. This might also lead to some interesting YouTube videos and blog posts.</div><div style="font-family: 'Lucida Grande', Verdana, 'Lucida Sans Regular', 'Lucida Sans Unicode', Arial, sans-serif; font-size: 22px; line-height: 33px;"><br></div><div style="font-family: 'Lucida Grande', Verdana, 'Lucida Sans Regular', 'Lucida Sans Unicode', Arial, sans-serif; font-size: 22px; line-height: 33px;">I need to try some fraud solutions such as&nbsp;<a href="https://www.signifyd.com/">Signifyd</a>. Maybe see if the new Recurly API offers something, or if Stripe or some deeper PayPal integration would work better.&nbsp;</div><div style="font-family: 'Lucida Grande', Verdana, 'Lucida Sans Regular', 'Lucida Sans Unicode', Arial, sans-serif; font-size: 22px; line-height: 33px;"><br></div><div style="font-family: 'Lucida Grande', Verdana, 'Lucida Sans Regular', 'Lucida Sans Unicode', Arial, sans-serif; font-size: 22px; line-height: 33px;">At the moment I don't really have the energy to get into fixing the payment situation. Dealing with the fraud kind of burned me out and left me disappointed in the state of payment systems.&nbsp;</div><div style="font-family: 'Lucida Grande', Verdana, 'Lucida Sans Regular', 'Lucida Sans Unicode', Arial, sans-serif; font-size: 22px; line-height: 33px;"><br></div><div style="font-family: 'Lucida Grande', Verdana, 'Lucida Sans Regular', 'Lucida Sans Unicode', Arial, sans-serif; font-size: 22px; line-height: 33px;">I don't want to wind up in another nightmare scenario. Maybe I'll mess something up in the integration, or it just doesn't prevent fraud as well as it should and I'll experience another crime wave. I feel I cannot trust that I will be protected without having to manually look at each transaction.&nbsp;</div><div style="font-family: 'Lucida Grande', Verdana, 'Lucida Sans Regular', 'Lucida Sans Unicode', Arial, sans-serif; font-size: 22px; line-height: 33px;"><br></div><div style="font-family: 'Lucida Grande', Verdana, 'Lucida Sans Regular', 'Lucida Sans Unicode', Arial, sans-serif; font-size: 22px; line-height: 33px;">Each fraud case I find makes me lose a bit of faith in humanity. It's just not a very fun way to spend your day. I'll need to get back into fixing the credit card issue after regaining some energy. Hopefully Christmas holiday will help.&nbsp;</div><div style="font-family: 'Lucida Grande', Verdana, 'Lucida Sans Regular', 'Lucida Sans Unicode', Arial, sans-serif; font-size: 22px; line-height: 33px;"><br><div>If you liked this post and are considering starting your own box, please do check out&nbsp;<a href="https://candyjapan.com/book/">the book</a>. If you'd just like to get some candy, you can&nbsp;<a href="http://www.candyjapan.com/">subscribe to Candy Japan here</a>.</div></div>
]]>
			</description>
		</item>

		<item>
			<pubDate>Mon, 07 Dec 2015 07:10:41 +0000</pubDate>
			<title>Candy Japan 2015 Year in Review</title>
			<link>http://www.candyjapan.com/2015-year-in-review</link>
			<guid>http://www.candyjapan.com/2015-year-in-review</guid>
			<description>
<![CDATA[
<div><div><img src="/static/2015_chart.png?2" style="line-height: 1.5em; width: 100%;"><br></div></div><br><div><div style="font-family: 'Lucida Grande', Verdana, 'Lucida Sans Regular', 'Lucida Sans Unicode', Arial, sans-serif; font-size: 22px; line-height: 33px;"><b>How it started</b></div></div><div><br style="font-family: 'Lucida Grande', Verdana, 'Lucida Sans Regular', 'Lucida Sans Unicode', Arial, sans-serif; font-size: 22px; line-height: 33px;"><div><div><a href="http://www.candyjapan.com/" style="font-family: 'Lucida Grande', Verdana, 'Lucida Sans Regular', 'Lucida Sans Unicode', Arial, sans-serif; font-size: 22px; line-height: 1.5em; color: rgb(68, 68, 136); text-decoration: none;">Candy Japan</a><span style="font-family: 'Lucida Grande', Verdana, 'Lucida Sans Regular', 'Lucida Sans Unicode', Arial, sans-serif; font-size: 22px; line-height: 1.5em;">&nbsp;mails subscribers around the world candy twice a month.</span></div><div style="font-family: 'Lucida Grande', Verdana, 'Lucida Sans Regular', 'Lucida Sans Unicode', Arial, sans-serif; font-size: 22px; line-height: 33px;"><span style="line-height: 1.5em;"><br></span></div><div style="font-family: 'Lucida Grande', Verdana, 'Lucida Sans Regular', 'Lucida Sans Unicode', Arial, sans-serif; font-size: 22px; line-height: 33px;"><span style="line-height: 1.5em;">In 2011 I moved to Japan and</span><span style="line-height: 1.5em;">&nbsp;needed some income, so I decided to see if there might be something I could sell online.&nbsp;</span><span style="line-height: 1.5em;">I picked sweets, as they have a nice balance between fun to receive and easy to send.&nbsp;</span><span style="line-height: 1.5em;">I wanted to try having recurring subscribers instead of doing one-off sales.&nbsp;</span></div><div style="font-family: 'Lucida Grande', Verdana, 'Lucida Sans Regular', 'Lucida Sans Unicode', Arial, sans-serif; font-size: 22px; line-height: 33px;"><br></div><div style="font-family: 'Lucida Grande', Verdana, 'Lucida Sans Regular', 'Lucida Sans Unicode', Arial, sans-serif; font-size: 22px; line-height: 33px;"><span style="line-height: 1.5em;">The service grew rapidly to 300 customers in 2011, then had a long stable until 2013. In&nbsp;</span><a href="http://www.candyjapan.com/2014-year-in-review" style="line-height: 1.5em;">2014 there was massive growth</a><span style="line-height: 1.5em;">.&nbsp;</span></div><div style="font-family: 'Lucida Grande', Verdana, 'Lucida Sans Regular', 'Lucida Sans Unicode', Arial, sans-serif; font-size: 22px; line-height: 33px;"><span style="line-height: 1.5em;"><br></span></div><div style="font-family: 'Lucida Grande', Verdana, 'Lucida Sans Regular', 'Lucida Sans Unicode', Arial, sans-serif; font-size: 22px; line-height: 33px;"><span style="line-height: 1.5em;"><b>2015</b></span></div><div style="font-family: 'Lucida Grande', Verdana, 'Lucida Sans Regular', 'Lucida Sans Unicode', Arial, sans-serif; font-size: 22px; line-height: 33px;"><span style="line-height: 1.5em;"><b><br></b></span></div><div><font face="Lucida Grande, Verdana, Lucida Sans Regular, Lucida Sans Unicode, Arial, sans-serif"><span style="font-size: 22px; line-height: 33px;">One year ago I set myself the goal of reaching 1500 subscribers. In reality t</span></font><span style="line-height: 1.5em; font-family: 'Lucida Grande', Verdana, 'Lucida Sans Regular', 'Lucida Sans Unicode', Arial, sans-serif; font-size: 22px;">his year turned out to be quite a roller coaster.</span></div><div><font face="Lucida Grande, Verdana, Lucida Sans Regular, Lucida Sans Unicode, Arial, sans-serif"><span style="font-size: 22px; line-height: 33px;"><br></span></font></div><div><font face="Lucida Grande, Verdana, Lucida Sans Regular, Lucida Sans Unicode, Arial, sans-serif"><span style="font-size: 22px; line-height: 33px;">I thought we were doing great, even crossing 1200 subs at one point. But that turned out to be a mirage. All lies, just a dream. Fake.&nbsp;</span></font><a href="http://www.candyjapan.com/candy-japan-hit-with-credit-card-fraud" style="font-family: 'Lucida Grande', Verdana, 'Lucida Sans Regular', 'Lucida Sans Unicode', Arial, sans-serif; font-size: 22px; line-height: 33px;">They were actually criminals engaging in testing stolen credit cards</a><span style="font-family: 'Lucida Grande', Verdana, 'Lucida Sans Regular', 'Lucida Sans Unicode', Arial, sans-serif; font-size: 22px; line-height: 33px;">.</span></div><div><span style="font-family: 'Lucida Grande', Verdana, 'Lucida Sans Regular', 'Lucida Sans Unicode', Arial, sans-serif; font-size: 22px; line-height: 33px;"><br></span></div><div><b style="font-size: 22px; line-height: 33px; font-family: 'Lucida Grande', Verdana, 'Lucida Sans Regular', 'Lucida Sans Unicode', Arial, sans-serif;">Reality check</b><span style="font-family: 'Lucida Grande', Verdana, 'Lucida Sans Regular', 'Lucida Sans Unicode', Arial, sans-serif; font-size: 22px; line-height: 33px;"><br></span></div><div><b style="font-size: 22px; line-height: 33px; font-family: 'Lucida Grande', Verdana, 'Lucida Sans Regular', 'Lucida Sans Unicode', Arial, sans-serif;"><br></b></div><div><span style="font-family: 'Lucida Grande', Verdana, 'Lucida Sans Regular', 'Lucida Sans Unicode', Arial, sans-serif; font-size: 22px; line-height: 33px;">Purging fakes took us under the magic one thousand subscribers again. An important number not just psychologically, but because that's where postal discounts start.&nbsp;</span></div><div><span style="font-family: 'Lucida Grande', Verdana, 'Lucida Sans Regular', 'Lucida Sans Unicode', Arial, sans-serif; font-size: 22px; line-height: 33px;"><br></span></div><div><div><span style="font-family: 'Lucida Grande', Verdana, 'Lucida Sans Regular', 'Lucida Sans Unicode', Arial, sans-serif; font-size: 22px; line-height: 33px;">I played cat-and-mouse with the fraudsters for a bit, adding various checks such as e-mail confirmation, IP bans etc. but it only took hours for the criminals to adapt to these. Some of the fraud was pretty blatant.</span></div><div><span style="font-family: 'Lucida Grande', Verdana, 'Lucida Sans Regular', 'Lucida Sans Unicode', Arial, sans-serif; font-size: 22px; line-height: 33px;"><br></span></div><div><img src="http://www.candyjapan.com/static/walter_white.jpg" style="line-height: 1.5em; width: 100%;"><br></div><div><span style="font-family: 'Lucida Grande', Verdana, 'Lucida Sans Regular', 'Lucida Sans Unicode', Arial, sans-serif; font-size: 22px; line-height: 33px;"><br></span></div><div><span style="font-family: 'Lucida Grande', Verdana, 'Lucida Sans Regular', 'Lucida Sans Unicode', Arial, sans-serif; font-size: 22px; line-height: 33px;">Eventually I just ragequit and switched off credit cards, going back to PayPal-only.</span></div></div><br><div><span style="font-family: 'Lucida Grande', Verdana, 'Lucida Sans Regular', 'Lucida Sans Unicode', Arial, sans-serif; font-size: 22px; line-height: 33px;">Besides costing thousands of dollars in various fees, i</span><span style="font-family: 'Lucida Grande', Verdana, 'Lucida Sans Regular', 'Lucida Sans Unicode', Arial, sans-serif; font-size: 22px; line-height: 33px;">t had other negative consequences as well.&nbsp;</span></div><br><div style="font-family: 'Lucida Grande', Verdana, 'Lucida Sans Regular', 'Lucida Sans Unicode', Arial, sans-serif; font-size: 22px; line-height: 33px;">I had spent time coming up with a new sign-up flow which was looking very promising, but had to scrap it when switching back to PayPal-only. Similarly I had to stop an A/B test midway, as the fraud was skewing the results too much.&nbsp;</div><div style="font-family: 'Lucida Grande', Verdana, 'Lucida Sans Regular', 'Lucida Sans Unicode', Arial, sans-serif; font-size: 22px; line-height: 33px;"><br></div><div style="font-family: 'Lucida Grande', Verdana, 'Lucida Sans Regular', 'Lucida Sans Unicode', Arial, sans-serif; font-size: 22px; line-height: 33px;">Buying gift cards I had only implemented through credit cards, so switching to PayPal meant that I could no longer sell those. This led to more lost sales. Having PayPal only seems to lower conversions, so I am losing sales there too.</div><div style="font-family: 'Lucida Grande', Verdana, 'Lucida Sans Regular', 'Lucida Sans Unicode', Arial, sans-serif; font-size: 22px; line-height: 33px;"><br></div><div style="font-family: 'Lucida Grande', Verdana, 'Lucida Sans Regular', 'Lucida Sans Unicode', Arial, sans-serif; font-size: 22px; line-height: 33px;"><span style="line-height: 1.5em;">Growth backtracked.&nbsp;</span><font face="Lucida Grande, Verdana, Lucida Sans Regular, Lucida Sans Unicode, Arial, sans-serif" style="font-size: medium; line-height: 1.5em;"><span style="font-size: 22px; line-height: 33px;">We are now instead back to 750 subs and the trend still hasn't reversed. Very far from the goal of 1500 I had set.</span></font></div><div style="font-family: 'Lucida Grande', Verdana, 'Lucida Sans Regular', 'Lucida Sans Unicode', Arial, sans-serif; font-size: 22px; line-height: 33px;"><br></div><div style="font-family: 'Lucida Grande', Verdana, 'Lucida Sans Regular', 'Lucida Sans Unicode', Arial, sans-serif; font-size: 22px; line-height: 33px;"><div><font face="Lucida Grande, Verdana, Lucida Sans Regular, Lucida Sans Unicode, Arial, sans-serif" style="font-size: medium; line-height: 1.5em;"><span style="font-size: 22px; line-height: 33px;"><b>Tax issues</b></span></font></div><br><div>I've lived in Japan long enough now that it seemed I might need to switch to paying taxes here instead of to my native Finland. It took almost a year to get a decision on this, while in the meantime I continued to pay to both.</div><br>I thought taxes in Japan might end up being much cheaper, however turns out Japan just has many different kinds of taxes which are not paid at once, so there is much more to pay than just the low initial bill.&nbsp;</div><div style="font-family: 'Lucida Grande', Verdana, 'Lucida Sans Regular', 'Lucida Sans Unicode', Arial, sans-serif; font-size: 22px; line-height: 33px;"><br><div>After Finland finally agreed with the tax switch I received a big refund for amounts I had unnecessarily paid there. Celebration was in order, so I promptly spent it reserving flights &amp; AirBnB for a 2016 summer in Europe (if you are in Paris / Amsterdam and want to meet up, <a href="mailto:me@bemmu.com">let me know</a>).</div><br><div><div><b>Wrote a book on how to start a subscription box</b></div><br><div>The third major undertaking was to expand the type of writing I do on this blog into a whole ebook. It's called "<a href="https://candyjapan.com/book/">How to Start and Grow Your Subscription Box</a>". The writing process was much tougher than I had anticipated.&nbsp;</div><br><div>I hoped to complete it in a month, but in the end it took 4 months, with the mid part feeling like "this is hopeless and will never end". Besides just writing it out, there was more research and reorganizing than I had anticipated.</div></div><br><div><a href="http://www.candyjapan.com/book"><img src="https://www.candyjapan.com/book/images/title_page.png" style="font-family: 'lucida grande', tahoma, verdana, arial, sans-serif; font-size: medium; line-height: 1.5em; width: 409px;"></a><br style="font-family: 'lucida grande', tahoma, verdana, arial, sans-serif; font-size: medium; line-height: 24px;"></div><br><div><div>CC fraud, tax issues and writing the book were the main activities this year. If you would like to read the laundry list of minor things I spent time on, <a href="http://www.candyjapan.com/2015-year-in-review-part-2">read on to part 2</a>.</div><br><div>If you liked this post and are considering starting your own box, please do check out&nbsp;<a href="https://candyjapan.com/book/">the book</a>. If you'd just like to get some candy, you can&nbsp;<a href="http://www.candyjapan.com/">subscribe to Candy Japan here</a>.<br></div></div></div></div></div>
]]>
			</description>
		</item>

		<item>
			<pubDate>Sun, 15 Nov 2015 04:40:16 +0000</pubDate>
			<title>How to Start and Grow Your Subscription Box</title>
			<link>http://www.candyjapan.com/subscription-box-book</link>
			<guid>http://www.candyjapan.com/subscription-box-book</guid>
			<description>
<![CDATA[
<a href="http://www.candyjapan.com/book"><img id="img1" class="rightImg" src=></a>I figured I've learned enough stuff from running <a href="http://www.candyjapan.com">Candy Japan</a>&nbsp;to&nbsp;write an e-book.&nbsp;Since July I've spent every extra moment on this project, which I finally finished this week.<div><br><div><div>It's called "<a href="https://www.candyjapan.com/book/">How to Start and Grow Your Subscription Box</a>". It starts from brainstorming an idea and a name for a subscription box, then looks at different e-commerce platforms for setting it up, finally finishing with some packaging and marketing advice (here's the&nbsp;<a href="https://www.candyjapan.com/book/#toc" style="line-height: 1.5em;">full table of contents</a>).</div><br><div><div><span style="line-height: 1.5em;">I wanted to compile a bit less self-helpy hypey type of resource for someone thinking of starting a box, something that would contain a lot of practical advice. It would be the equivalent of "</span><a href="http://www.amazon.com/gp/product/0615373968/ref=as_li_tl?ie=UTF8&amp;camp=1789&amp;creative=9325&amp;creativeASIN=0615373968&amp;linkCode=as2&amp;tag=winxbysimplvi-20&amp;linkId=SUUMFBMQXMDRGETX" style="line-height: 1.5em;"></a><a href="http://www.amazon.com/Start-Small-Stay-Developers-Launching/dp/0615373968">Start Small, Stay Small</a>"<span style="line-height: 1.5em;"> for the subscription box world.&nbsp;</span><span style="line-height: 1.5em;">Less "you can do it if you believe in yourself!" and more "here's what you can actually do now".&nbsp;</span></div></div></div></div><br><div><b>The writing process</b></div><br><div><div><span style="line-height: 1.5em;">The biggest challenge in the writing process was not quitting.&nbsp;</span><span style="line-height: 1.5em;">Seinfeld's method for writing jokes was discipline, just keep at it every day. Mark the day with an X in the calendar when you did your work, then don't break the chain of Xs.</span><br></div></div><br><div><i>"After a few days you'll have a chain. Just keep at it and the chain will grow longer every day. You'll like seeing that chain, especially when you get a few weeks under your belt. Your only job next is to not break the chain."</i></div><br><div>You know who else followed the Seinfeld method? Jack Torrance in The Shining.</div><br><div><img id="img27" class="upperImg" src=></div><br><div>If you just robotically write X pages per day for Y days, you might find that at the end you have X*Y pages of nonsense.</div><br><div>Sometimes I had to stop and just rework the structure again. Often this meant throwing out pages that I had already written, because they wouldn't fit into a coherent whole.</div><br><div><div>Pages are not created equal. Write a self-introduction and it's no effort at all to hit your daily goal. Do a comparison of all the pricing plans of different subscription e-commerce platforms, and the same word count takes much longer.</div></div><br><div><b>One tip that helped me keep working</b></div><div><b><br></b></div><div><div>Write down your personal reasons for writing a book at the top of your outline.</div><br><div><span style="line-height: 1.5em;">I figured having a book would give me an extra multiplier every time I blog on subscription box topics, as I could link back to the book. A bit of a positive feedback loop as well, since the book will in turn give me more things to blog about.&nbsp;</span><span style="line-height: 1.5em;">To be able to write about these topics, I would also need to learn them better myself. Even if the book flops, I'll still at least have learned a ton.</span></div><div><span style="line-height: 1.5em;"><br></span></div><div><span style="line-height: 1.5em;">Even if I didn't feel like writing that day, I would still agree with these reasons and manage to do at least a bit of writing.</span></div><br></div><div><b>Underestimating the work involved</b></div><br><div><div>At the top of the rough outline for my book I also noted:</div><div><i style="line-height: 1.5em;">To write a 50 page book in 3 weeks =&nbsp;</i><i style="line-height: 1.5em;">only 3 pages a day with 4 days left for editing.&nbsp;</i><i style="line-height: 1.5em;"><a href="http://sachagreif.com/how-nathan-barry-and-i-sold-39k-worth-of-ebooks/" style="line-height: 1.5em;">Sacha wrote 40 pages in 3 weeks, Barry wrote 100 pages in 3 months.</a></i><br></div></div><br><div>That seems really optimistic now.</div><br><div><div>Taking into account all the reorganizing, rewriting and working through the difficult parts,&nbsp;<span style="line-height: 1.5em;">I</span><span style="line-height: 1.5em;">&nbsp;ended up taking 4 months to finish, not 3 weeks.&nbsp;</span></div><div><span style="line-height: 1.5em;"><br></span></div><div><img id="img0" class="upperImg" src=></div><div><span style="line-height: 1.5em;"><br></span></div><div><span style="line-height: 1.5em;">There was some (justified?) scope creep as well, as I ended up writing</span><span style="line-height: 1.5em;">&nbsp;138 pages, while still covering less topics than I set out to do in the initial outline.&nbsp;</span><span style="line-height: 1.5em;">Had I only written 50 pages about everything I intended to cover in the rough outline, I would have ended up like The Hitchhiker's Guide to the Galaxy, describing Earth as just "mostly harmless" due to space considerations.</span></div><div><span style="line-height: 1.5em;"><br></span></div><div><span style="line-height: 1.5em;"><b>Launching</b></span></div><br><div>I wrote the book in Markdown using Sublime Text, then turned that into PDF, ePub and mobi using <a href="http://www.leanpub.com">Leanpub</a>. Submission to Kindle was easier than iBooks (had to regenerate the ePub file many times to pass all the requirements), but both were much less painful than I had feared. For the book cover I used <a href="http://www.99designs.com">99designs</a>.&nbsp;<span style="line-height: 1.5em;">The landing page is hosted on Google App Engine as a static site, with digital product sales handled by </span><a href="http://www.gumroad.com" style="line-height: 1.5em;">Gumroad</a><span style="line-height: 1.5em;">.</span></div><div><span style="line-height: 1.5em;"><br></span></div><div><span style="line-height: 1.5em;">I don't have the launch sales numbers yet as the book was released just now, but I will write another post about that.&nbsp;</span></div></div><div><span style="line-height: 1.5em;"><br></span></div><div><b>Thanks for reading</b></div><br><div>You can find the book <a href="http://www.candyjapan.com/book">here</a> if you are interested in starting a subscription box. You can also find it by searching for "bemmu" on iBooks / Kindle.</div><br><div>Also thanks to Laksman of <a href="http://www.sideprojectbook.com/">SideProject Book</a> for reading a draft of this post.</div><br><br><br>
]]>
			</description>
		</item>

		<item>
			<pubDate>Fri, 18 Sep 2015 03:23:54 +0000</pubDate>
			<title>Candy Japan hit with credit card fraud</title>
			<link>http://www.candyjapan.com/candy-japan-hit-with-credit-card-fraud</link>
			<guid>http://www.candyjapan.com/candy-japan-hit-with-credit-card-fraud</guid>
			<description>
<![CDATA[
<img id="img0" class="upperImg" src=><div><span style="line-height: 1.5em;"><br></span></div><div><span style="line-height: 1.5em;">After our first child was born two months ago, I was very much preoccupied with trying to learn the basics of infant care.&nbsp;</span><br></div><div><span style="line-height: 1.5em;"><br></span></div><div><span style="line-height: 1.5em;">I still had to know how much candy to order, so one day I got online for a moment to check how many new subscribers had joined during my time away.</span></div><div><span style="line-height: 1.5em;"><br></span></div><div><span style="line-height: 1.5em;"><b>Wow, a ton of new members are joining, hooray!</b></span><br></div><div><b><br></b></div><div><div>Seems they are all finding us through Google. We must have been mentioned in the media somewhere. Fantastic news!&nbsp;<span style="line-height: 1.5em;">I went straight to Slack to brag about the great sales numbers.</span></div></div><br><div><span style="line-height: 1.5em;">Then I decided to look at the traffic in a bit more detail, to see where this sudden good luck was springing from.</span><br></div><br><div>Hmm, odd.&nbsp;</div><br><div><img id="img3" class="upperImg" src=></div><div><span style="line-height: 1.5em;"><br></span></div><div><span style="line-height: 1.5em;">The conversion ratio for organic search traffic is unnaturally high</span><span style="line-height: 1.5em;">. In other words, the number of people searching for Candy Japan on Google hadn't changed, but somehow the amount of orders coming in from search had massively increased.</span></div><br><div>Having a conversion ratio over 5% for one day is a statistical anomaly. Sustaining it for the better part of the week means that something strange is going on.&nbsp;</div><br><div><b>Could it be fraud?</b></div><div><b><br></b></div><img id="img25" class="rightImg" src= style="margin-bottom:20px"><br><br><div>I knew that some stores have a problem where sometimes people will buy stuff with stolen credit cards. Hey I've seen Tom Hanks chase DiCaprio in&nbsp;<a href="http://www.imdb.com/title/tt0264464/?ref_=nv_sr_1">Catch Me If You Can</a>.&nbsp;</div><br><div>I was aware that a certain percentage of transactions is always fraudulent, but I had always assumed that these transactions would be mixed in with real ones. Hundred real orders there, then one fraud case dripping in here.&nbsp;</div><br><div>Since the level of fraud I had experienced so far was at an acceptable level, I assumed everything is OK.</div><br><div><b>Everything is not OK.</b></div><div><span style="line-height: 1.5em;"><br></span></div><div><span style="line-height: 1.5em;">What I hadn't expected was having a wave of fraud crash in suddenly with such force.&nbsp;</span></div><div><span style="line-height: 1.5em;"><br></span></div><div><span style="line-height: 1.5em;">While from Google Analytics I had noticed that a lot of sales had happened, it didn't reveal the severity of the issue. Looking at the list of transactions, I saw that <b>thousands </b>of payment attempts had been made with different cards during those 4 days. For each successful sale, the fraudsters had tried a dozen cards that had failed.</span></div><div><span style="line-height: 1.5em;"><br></span></div><img id="img4" class="rightImg" src=><div>After starting to deal with this, I got contacted by a police officer in Ohio. To be doubly sure he really was a police officer, I called the local police directly and asked for him by name. "Thanks for calling me, let me just pull over". He was on patrol. His reason for contacting me was that someone had noticed an unexpected charge from "candy japan" on their card and had filed a police report.</div><br><div>I exchanged any information I had of the particular fraud incident he was investigating, but he seemed not to have much hope with the case, telling me that they just had to follow up as they'd received a report of an unknown transaction happening. <span style="line-height: 1.5em;">I think he even said the words "this won't lead anywhere". I agree. Assuming f</span><span style="line-height: 1.5em;">ake IP, fake address, card number bought from someone online, what could he possibly do about it?</span></div><div><span style="line-height: 1.5em;"><br></span></div><div><span style="line-height: 1.5em;"><b>Easy money</b></span></div><br><img id="img1" class="rightImg" src=><div><span style="line-height: 1.5em;">I started reading a bit more about how this underworld works. Apparently these criminals are called "carders". The stolen cards originate from credit card security breaches, resulting in a big list of card numbers. These are later sold online in packs filtered to working card numbers only, which can be purchased for about $10 per valid card.</span></div><div><br><div><span style="line-height: 1.5em;">To be able to compile and sell these packs, the carders need to know which ones are valid. To do this, they will use an online store or service to place an order for the sole purpose of seeing if the charge goes through or not.&nbsp;</span></div><div><span style="line-height: 1.5em;"><br></span></div><div><span style="line-height: 1.5em;">If a store ends up as such a checking endpoint, they will see a sudden influx of a lot of fake orders. That's what was happening to me (and recently also to <a href="https://remysharp.com/2015/09/17/jsbin-toxic-part-4">jsbin</a>).</span></div><div><span style="line-height: 1.5em;"><br></span></div><div><span style="line-height: 1.5em;">Carder uses my store to test 10 cards before they find one that works. For each attempt I pay a 0.15</span><span style="color: rgb(84, 84, 84); font-family: arial, sans-serif; font-size: small; line-height: 18.2px;">€</span><span style="line-height: 1.5em;">&nbsp;transaction fee to my gateway and another $0.10 fee to subscription middleware </span><a href="https://recurly.com/pricing" style="line-height: 1.5em;">Recurly</a><span style="line-height: 1.5em;">. So even before a successful order comes in, I'm already out around three dollars.</span><br></div><br><div>Then they hit upon a card that works. Now the fee to charge that card is a bit higher, since money is actually moving. Our candy subscription is $25 / month, which costs me $1.76 in fees to charge (Recurly fee is $0.10 + 1.25%, gateway fee is 0.15<span style="color: rgb(84, 84, 84); font-family: arial, sans-serif; font-size: small; line-height: 18.2px;">€&nbsp;</span><span style="line-height: 1.5em;">+ 2.75%).</span></div><br><div>Believing this to be a real transaction, I ship the product to them. Candy itself, shipping, labor etc. will cost something around $15.&nbsp;<span style="line-height: 1.5em;">So now I'm out $19.76, but I received $25. What's the problem?</span></div><div><span style="line-height: 1.5em;"><br></span></div><div><span style="line-height: 1.5em;"><b>Chargeback</b></span></div><div><span style="line-height: 1.5em;"><br></span></div><div><span style="line-height: 1.5em;">When the real owner of the card notices the surprising charge on their card, they will dispute it by contacting their bank or credit card company. The customer receives their money back, as they should.</span></div><div><span style="line-height: 1.5em;"><br></span></div><div><span style="line-height: 1.5em;">The money I thought I had is taken from me and on top of that there is a 15</span><span style="color: rgb(84, 84, 84); font-family: arial, sans-serif; font-size: small; line-height: 18.2px;">€</span><span style="line-height: 1.5em;">&nbsp;chargeback fee. The end result is that I lost not only the transaction fees, but also the product and labor cost and on top of that get hit with an extra penalty.</span></div><div><span style="line-height: 1.5em;"><br></span></div><div><span style="line-height: 1.5em;">As I wasn't set up to handle these fees, I had to spend weeks just to understand what all this means and to write a bunch of glue code to export the chargeback information and convert them from gateway internal IDs to the ones understood by the Recurly gateway. Then even more code to cancel and adjust all those subscriptions to avoid charging them again or shipping any more product.</span></div><div><span style="line-height: 1.5em;"><br></span></div><div><span style="line-height: 1.5em;">For orders which I later noticed as very likely being fraudulent, I proactively refunded them, despite having already shipped many of those orders, leading to more losses.&nbsp;</span></div><div><span style="line-height: 1.5em;"><br></span></div><div><span style="line-height: 1.5em;">Later on these shipments will likely return to sender, as the fraudsters very likely used false names and addresses, leading to more work still.</span><br></div><div><span style="line-height: 1.5em;"><br></span></div><div><span style="line-height: 1.5em;"><b>Conclusion</b></span></div><div><span style="line-height: 1.5em;"><br></span></div><div><span style="line-height: 1.5em;">I lost weeks of productive time and thousands of dollars in money and product.&nbsp;</span>DiCaprio is cool, but I will be rooting for Tom Hanks next time.</div><div><span style="line-height: 1.5em;"><br></span></div><div><span style="line-height: 1.5em;"><s>Currently I have credit cards disabled until I can integrate with a fraud detection system.</s></span></div><div><span style="line-height: 1.5em;"><b>Read next</b>: <a href="how-i-got-credit-card-fraud-somewhat-under-control">How I Got Credit Card Fraud Somewhat Under Control</a></span></div><div><span style="line-height: 1.5em;"><br></span></div><div><span style="line-height: 1.5em;">If you would like me to send you some candy, you can&nbsp;</span><a href="http://www.candyjapan.com" style="line-height: 1.5em;">subscribe here</a><span style="line-height: 1.5em;">. I have also released a <a href="/book">book on running a subscription box</a>.</span><br></div></div><div><span style="line-height: 1.5em;"><br></span></div><div><span style="line-height: 1.5em;"><br></span></div>
]]>
			</description>
		</item>

		<item>
			<pubDate>Mon, 10 Aug 2015 04:33:02 +0000</pubDate>
			<title>Choosing a Domain Name</title>
			<link>http://www.candyjapan.com/choosing-a-domain-name</link>
			<guid>http://www.candyjapan.com/choosing-a-domain-name</guid>
			<description>
<![CDATA[
I haven't done a Candy Japan update recently. There are a few things I want to write about, but seeing Paul Graham's latest essay&nbsp;<a href="http://www.paulgraham.com/name.html">Change Your Name</a>, I decided to share some of my own tips for finding a domain name first. &nbsp;<br><br><div><div><b>How to quickly check domain name availability</b><br></div><br><div><div><span style="line-height: 1.5em;">There are three pretty obvious ways to secure a good name. The best one is if your desired name is simply available (as was the case for candyjapan.com).</span></div><br><div>One of my favorite tools for brainstorming domain names is called&nbsp;<a href="http://instantdomainsearch.com/">Instant Domain Search</a>. It shows&nbsp;if a domain is available or not in real time while you type in the name. Sometimes it does give false positives, so don’t party until double-checking the result using another tool, such as your domain registrar’s reservation page.&nbsp;</div><br><div><span style="line-height: 1.5em;">If your favorite name was not available, you’re not alone with this problem. Hundreds of millions of names have already been registered. This means that pretty much any single word and many good combinations of two words are gone.&nbsp;</span><span style="line-height: 1.5em;">You might desire a short name if possible, but you're unlikely to achieve a super-short name these days. Almost every possible combination of four letters is also taken, unless you include special characters in the name.&nbsp;</span></div></div></div><div><span style="line-height: 1.5em;"><br></span></div><div><div><b>Purchasing an existing name</b><br></div><div><b><br></b></div><div><div>If you find someone already has your name, chances are it is being held by a professional “domainer”. These are people who speculate on domain names by buying, holding and trading promising ones in the hope that later on someone like you will come along to buy it.</div><br><div>They may be holding massive amounts of domain names, hoping that one will end up being a hit valuable enough to cover all the costs spent on the rest. Sadly this means that they are often not very cheap. What do they cost? While many transactions happen in private, s<span style="line-height: 1.5em;">ome are sold through online or real-life auction events. You can browse the prices of names that have sold in these events in the past.&nbsp;</span></div><br><div>For example&nbsp;<a href="http://www.dnjournal.com/ytd-sales-charts.htm">dnjournal</a>&nbsp;has such a listing, from which you can see some examples such as:</div></div><br><div><span id="docs-internal-guid-e3b5f15c-664a-0178-ec21-a6d456e80e47"><div dir="ltr" style="margin-left: 0pt;"><table style="border: none; border-collapse: collapse; width: 624px;"><colgroup><col width="*"><col width="*"></colgroup><tbody><tr style="height: 0px;"><td style="border: 1px solid rgb(0, 0, 0); vertical-align: top; padding: 7px;"><p dir="ltr" style="line-height: 1.2; margin-top: 0pt; margin-bottom: 0pt;"><span style="font-size: 14.6666666666667px; font-family: Arial; color: rgb(0, 0, 0); vertical-align: baseline; white-space: pre-wrap; background-color: transparent;">HomeCare.com</span></p></td><td style="border: 1px solid rgb(0, 0, 0); vertical-align: top; padding: 7px;"><p dir="ltr" style="line-height: 1.2; margin-top: 0pt; margin-bottom: 0pt;"><span style="font-size: 14.6666666666667px; font-family: Arial; color: rgb(0, 0, 0); vertical-align: baseline; white-space: pre-wrap; background-color: transparent;">$350,000</span></p></td></tr><tr style="height: 0px;"><td style="border: 1px solid rgb(0, 0, 0); vertical-align: top; padding: 7px;"><p dir="ltr" style="line-height: 1.2; margin-top: 0pt; margin-bottom: 0pt;"><span style="font-size: 14.6666666666667px; font-family: Arial; color: rgb(0, 0, 0); vertical-align: baseline; white-space: pre-wrap; background-color: transparent;">FlowerBox.com</span></p></td><td style="border: 1px solid rgb(0, 0, 0); vertical-align: top; padding: 7px;"><p dir="ltr" style="line-height: 1.2; margin-top: 0pt; margin-bottom: 0pt;"><span style="font-size: 14.6666666666667px; font-family: Arial; color: rgb(0, 0, 0); vertical-align: baseline; white-space: pre-wrap; background-color: transparent;">$55,000</span></p></td></tr><tr style="height: 0px;"><td style="border: 1px solid rgb(0, 0, 0); vertical-align: top; padding: 7px;"><p dir="ltr" style="line-height: 1.2; margin-top: 0pt; margin-bottom: 0pt;"><span style="font-size: 14.6666666666667px; font-family: Arial; color: rgb(0, 0, 0); vertical-align: baseline; white-space: pre-wrap; background-color: transparent;">MegaDeal.com</span></p></td><td style="border: 1px solid rgb(0, 0, 0); vertical-align: top; padding: 7px;"><p dir="ltr" style="line-height: 1.2; margin-top: 0pt; margin-bottom: 0pt;"><span style="font-size: 14.6666666666667px; font-family: Arial; color: rgb(0, 0, 0); vertical-align: baseline; white-space: pre-wrap; background-color: transparent;">$50,000</span></p></td></tr><tr style="height: 0px;"><td style="border: 1px solid rgb(0, 0, 0); vertical-align: top; padding: 7px;"><p dir="ltr" style="line-height: 1.2; margin-top: 0pt; margin-bottom: 0pt;"><span style="font-size: 14.6666666666667px; font-family: Arial; color: rgb(0, 0, 0); vertical-align: baseline; white-space: pre-wrap; background-color: transparent;">Moon.co</span></p></td><td style="border: 1px solid rgb(0, 0, 0); vertical-align: top; padding: 7px;"><p dir="ltr" style="line-height: 1.2; margin-top: 0pt; margin-bottom: 0pt;"><span style="font-size: 14.6666666666667px; font-family: Arial; color: rgb(0, 0, 0); vertical-align: baseline; white-space: pre-wrap; background-color: transparent;">£6,000</span></p></td></tr></tbody></table><br></div><div dir="ltr" style="margin-left: 0pt;">Another place for browsing listings is&nbsp;<a href="https://flippa.com/domains/just-sold">Flippa</a>, which had trades such as:<br></div><div dir="ltr" style="margin-left: 0pt;"><span id="docs-internal-guid-e3b5f15c-664a-bd40-c2b6-47a6a462e53d"><br><div dir="ltr" style="margin-left: 0pt;"><table style="border: none; border-collapse: collapse; width: 624px;"><colgroup><col width="*"><col width="*"></colgroup><tbody><tr style="height: 0px;"><td style="border: 1px solid rgb(0, 0, 0); vertical-align: top; padding: 7px;"><p dir="ltr" style="line-height: 1.2; margin-top: 0pt; margin-bottom: 0pt;"><span style="font-size: 14.6666666666667px; font-family: Arial; color: rgb(0, 0, 0); vertical-align: baseline; white-space: pre-wrap; background-color: transparent;">Mini-Series.com</span></p></td><td style="border: 1px solid rgb(0, 0, 0); vertical-align: top; padding: 7px;"><p dir="ltr" style="line-height: 1.2; margin-top: 0pt; margin-bottom: 0pt;"><span style="font-size: 14.6666666666667px; font-family: Arial; color: rgb(0, 0, 0); vertical-align: baseline; white-space: pre-wrap; background-color: transparent;">$6</span></p></td></tr><tr style="height: 0px;"><td style="border: 1px solid rgb(0, 0, 0); vertical-align: top; padding: 7px;"><p dir="ltr" style="line-height: 1.2; margin-top: 0pt; margin-bottom: 0pt;"><span style="font-size: 14.6666666666667px; font-family: Arial; color: rgb(0, 0, 0); vertical-align: baseline; white-space: pre-wrap; background-color: transparent;">TakeSail.com</span></p></td><td style="border: 1px solid rgb(0, 0, 0); vertical-align: top; padding: 7px;"><p dir="ltr" style="line-height: 1.2; margin-top: 0pt; margin-bottom: 0pt;"><span style="font-size: 14.6666666666667px; font-family: Arial; color: rgb(0, 0, 0); vertical-align: baseline; white-space: pre-wrap; background-color: transparent;">$100</span></p></td></tr><tr style="height: 0px;"><td style="border: 1px solid rgb(0, 0, 0); vertical-align: top; padding: 7px;"><p dir="ltr" style="line-height: 1.2; margin-top: 0pt; margin-bottom: 0pt;"><span style="font-size: 14.6666666666667px; font-family: Arial; color: rgb(0, 0, 0); vertical-align: baseline; white-space: pre-wrap; background-color: transparent;">Swore.com</span></p></td><td style="border: 1px solid rgb(0, 0, 0); vertical-align: top; padding: 7px;"><p dir="ltr" style="line-height: 1.2; margin-top: 0pt; margin-bottom: 0pt;"><span style="font-size: 14.6666666666667px; font-family: Arial; color: rgb(0, 0, 0); vertical-align: baseline; white-space: pre-wrap; background-color: transparent;">$2,300</span></p></td></tr><tr style="height: 0px;"><td style="border: 1px solid rgb(0, 0, 0); vertical-align: top; padding: 7px;"><p dir="ltr" style="line-height: 1.2; margin-top: 0pt; margin-bottom: 0pt;"><span style="font-size: 14.6666666666667px; font-family: Arial; color: rgb(0, 0, 0); vertical-align: baseline; white-space: pre-wrap; background-color: transparent;">Cloud.io</span></p></td><td style="border: 1px solid rgb(0, 0, 0); vertical-align: top; padding: 7px;"><p dir="ltr" style="line-height: 1.2; margin-top: 0pt; margin-bottom: 0pt;"><span style="font-size: 14.6666666666667px; font-family: Arial; color: rgb(0, 0, 0); vertical-align: baseline; white-space: pre-wrap; background-color: transparent;">$45,000</span></p></td></tr></tbody></table></div><div dir="ltr" style="margin-left: 0pt;"><div dir="ltr" style="margin-left: 0pt;"><br></div><div dir="ltr" style="margin-left: 0pt;"><span id="docs-internal-guid-0564fb41-667e-a2ed-c52d-d0ecd883a635">As you can see the range of prices is vast.&nbsp;<br><span style="line-height: 1.5em;"><br></span></span></div><div dir="ltr" style="margin-left: 0pt;"><span style="line-height: 1.5em;">There really is no one answer to the question “what should this domain name cost”? If you have two wealthy bidders going against each other to secure a name, then the price is as high as those bidders can afford. The owner of your desired name may prefer to hold off on making smaller trades and concentrate on the big wins. They may not even bother to reply if you don’t make a sufficiently interesting offer right off the bat.&nbsp;</span><br></div><div dir="ltr" style="margin-left: 0pt;"><div dir="ltr" style="margin-left: 0pt;"><span id="docs-internal-guid-0564fb41-667e-a2ed-c52d-d0ecd883a635"><div dir="ltr" style="margin-left: 0pt;"><br class="Apple-interchange-newline"><table style="border: none; border-collapse: collapse; width: 624px;"><colgroup><col width="*"></colgroup><tbody><tr style="height: 0px;"><td style="border: 1px solid rgb(0, 0, 0); vertical-align: top; padding: 7px;"><p dir="ltr" style="line-height: 1.2; margin-top: 0pt; margin-bottom: 0pt;"><span style="font-size: 14.6666666666667px; font-family: Arial; color: rgb(0, 0, 0); vertical-align: baseline; white-space: pre-wrap; background-color: transparent;"><b>Beware</b>: some unscrupulous sellers in Flippa auctions will try to auction domains that contain words made up of international characters which happen to look like English words. For example if you see </span><span style="font-size: 14.6666666666667px; font-family: Arial; color: rgb(37, 37, 37); vertical-align: baseline; white-space: pre-wrap;">womаn.com for sale for a cheap price, it’s a trick. </span><span style="color: rgb(37, 37, 37); font-family: Arial; font-size: 14.6666666666667px; white-space: pre-wrap; line-height: 1.2;">If you look very closely, you’ll see the “a” in womаn.com is actually the Russian cyrillic letter а.</span></p></td></tr></tbody></table></div></span></div><div dir="ltr" style="margin-left: 0pt;"><br></div></div><div dir="ltr" style="margin-left: 0pt;">Besides auctions, you can also contact current domain owners directly. If they are experienced domainers, they will likely play some psychological games with you to make you pay more. One of these is to make you believe that they are currently engaged in multiple bids for the name and that you need to outbid your competition. Whether this is true or just a trick you have no way of knowing, so you may be tempted to increase your price to outbid these possibly imaginary competitors.&nbsp;</div><div dir="ltr" style="margin-left: 0pt;"><br></div><div dir="ltr" style="margin-left: 0pt;">Another mental trick they might use is to claim that they acquired the name for use in a project which they have currently underway. The release of their amazing site is just right around the corner and they would be unwilling to sell the name &nbsp;-- except of course they might reconsider for a considerably higher price to justify scrapping their current plans. The last time this happened to me and I walked away, the current owner still after years has not used their name for anything.</div><div dir="ltr" style="margin-left: 0pt;"><br></div><div dir="ltr" style="margin-left: 0pt;">There are also counter-tactics to these, for which reason you might want to consider hiring a domain broker to buy the name for you. They can navigate these negotiations in a more cool manner since they are more detached from the name than you are and get a better price.</div><div dir="ltr" style="margin-left: 0pt;"><br></div><div dir="ltr" style="margin-left: 0pt;"><div dir="ltr" style="margin-left: 0pt;"><div dir="ltr" style="margin-left: 0pt;"><div dir="ltr" style="margin-left: 0pt;"><b>Grabbing an expiring name</b><br></div><div dir="ltr" style="margin-left: 0pt;"><b><br></b></div><div dir="ltr" style="margin-left: 0pt;">Domain names are reserved for a limited period of time. What if someone no longer wants their name lets it expire? At first it enters a grace period for 30-90 days, during which the original owner can still renew the domain. After that it enters the redemption period, during which the original owner can still renew the domain, but there is a fee involved.&nbsp;<span style="line-height: 1.5em;">If even after the redemption period is over the original owner has still not renewed, then it “drops” (becomes available).&nbsp;</span></div><div dir="ltr" style="margin-left: 0pt;"><span style="line-height: 1.5em;"><br></span></div><div dir="ltr" style="margin-left: 0pt;"><span style="line-height: 1.5em;">The risk with using an expiring name is that it might have hosted some less than desirable content before or might have a lot of spammy links from bad neighborhoods pointing to it. You can see some of the backlinks by googling "link:example.com" and the previous content by checking what the site looked like in the past with&nbsp;<a href="https://archive.org/web/">Wayback Machine</a>.</span></div><div dir="ltr" style="margin-left: 0pt;"><span style="line-height: 1.5em;"><br></span></div><div dir="ltr" style="margin-left: 0pt;"><span style="line-height: 1.5em;">You might think that if you see a domain registration expire, you could just wait until the redemption period is over and register it yourself. However there are groups which use special software that rapidly attempt re-registration of these expired domain names over and over again in order to be the very first to re-register it. You will not be able to beat them manually.&nbsp;</span></div><div dir="ltr" style="margin-left: 0pt;"><br></div><div dir="ltr" style="margin-left: 0pt;">Luckily these companies are sort of mercenaries for hire. By paying them a small fee you can use their guns to get you the domain you want.&nbsp;If you want to know more about this subject, I highly recommend Mike Davidson’s classic article&nbsp;<a href="http://www.mikeindustries.com/blog/archive/2005/03/how-to-snatch-an-expiring-domain">How to Snatch an Expiring Domain</a>.&nbsp;</div><div dir="ltr" style="margin-left: 0pt;"><br></div><div dir="ltr" style="margin-left: 0pt;">The gist of it is that you can maximize your chances of getting your domain by instructing several of these “drop catching services” to attempt to get your name.&nbsp;<span style="line-height: 1.5em;">I’ve had some luck using</span><span style="line-height: 1.5em;">&nbsp;</span><a href="http://pool.com/" style="line-height: 1.5em;">pool.com</a><span style="line-height: 1.5em;">&nbsp;</span><span style="line-height: 1.5em;">for this purpose, but there are many others as well.&nbsp;</span><span style="line-height: 1.5em;">You can enter as many domains as you wish on their site, which they will then attempt to get for you. You can also browse domain names which will be “dropping” soon.</span></div><br><div><b>Consider a brandable variation of your key term</b><br></div><br><div>In the beginning I wrote that all the good names are taken. That's not entirely true. Actually only all OBVIOUS names are taken. Your&nbsp;<span style="line-height: 1.5em;">best option may be to come up with a new unique name that no-one else has thought of. Something catchy, with personality and branding potential.&nbsp;</span><span style="line-height: 1.5em;">A nice example of a name with benefits is&nbsp;</span><a href="http://www.mailchimp.com/" style="line-height: 1.5em;">mailchimp</a><span style="line-height: 1.5em;">, an email marketing service provider which uses a chimp as their mascot.&nbsp;</span></div><div><div><span style="line-height: 1.5em;"><br></span></div><div><span style="line-height: 1.5em;">The tactic is to try your desired word + an interesting suffix. You can put these ideas through Instant Domain Search to try them quickly, but there is an even faster way. There are services where you can enter lists of words to try as prefixes and suffixes and it tells you which ones are available. Some even have those lists built in.&nbsp;</span></div><div><span style="line-height: 1.5em;"><br></span></div><div><span style="line-height: 1.5em;">The best one I have found is called&nbsp;<a href="http://leandomainsearch.com/">Lean Domain Search</a>.&nbsp;</span><span style="line-height: 1.5em;">Suppose for example that you are thinking of starting a snack-related subscription box. As there are already dozens of snack boxes and many domain speculators out there, you will find that almost any good name is already taken. Entering the word “snack” into Lean Domain Search, you'll find that actually some good combinations of popular word beginnings or endings added to “snack” are still available. It doesn't suggest cute animal suffixes, but&nbsp;</span><span style="line-height: 1.5em;">can find for example that “SnackGlobal.com”, “SnackGate.com”, “EpicSnack.com”, “ViaSnack.com” and “SnackBoss.com” among many others are still out there for grabs.</span></div></div><div><span style="line-height: 1.5em;"><br></span></div><div><span style="line-height: 1.5em;"><b>Thanks for reading</b></span></div><br><div>I hope I helped you find a great name.</div></div></div></div></div></span></div></span></div></div>
]]>
			</description>
		</item>

		<item>
			<pubDate>Tue, 21 Jul 2015 08:45:08 +0000</pubDate>
			<title>Why write an ebook?</title>
			<link>http://www.candyjapan.com/why-write-an-ebook</link>
			<guid>http://www.candyjapan.com/why-write-an-ebook</guid>
			<description>
<![CDATA[
<div><span style="line-height: 1.5em;">While growing <a href="http://www.candyjapan.com">Candy Japan</a>, I realized that out of all the things involved in running it, I was enjoying writing about it the most. Not only is it fun to share what you've learned, but it turns out to be good marketing as well.&nbsp;</span><br></div><br><div>Enjoying the writing process itself and seeing good things come out of it kept me motivated to keep doing it.&nbsp;</div><br><div>After years of running the site and writing various posts, I've started getting more and more questions from others wanting to start their own subscription boxes as well. Looks like there is a slight "box boom" going on at the moment.</div><br><div>I realized that since I am already writing about this topic, all I would need to get an ebook out of it would be a minor adjustment in my writing direction.&nbsp;<span style="line-height: 1.5em;">So perhaps this is something I would be capable of doing.</span><span style="line-height: 1.5em;">&nbsp;</span></div><br><div>If you are already writing about a topic, the only difference between writing a book and writing random posts is having an outline. Not that even that is always necessary. <a href="http://www.amazon.com/gp/product/1449389554/ref=as_li_tl?ie=UTF8&amp;camp=1789&amp;creative=9325&amp;creativeASIN=1449389554&amp;linkCode=as2&amp;tag=winxbysimplvi-20&amp;linkId=JJMWF3NMWGIPJSXU">Hackers &amp; Painters</a> is one of my favorite books ever and it is a collection of essays already published for free <a href="http://paulgraham.com/articles.html">on Paul Graham's blog</a>!</div><br><div>But why do it? Because it's a multiplier for your existing efforts. It helps motivate you to blog more, as each post is also another step towards completing your book. If you think about it like this, there really is no reason NOT to work towards a book if you are already blogging anyway.</div><br><div><b>Thanks for reading</b></div><div><span style="line-height: 1.5em;">If you would like to buy the ebook when it comes out, </span><a href="http://leanpub.com/subscription-box" style="line-height: 1.5em;">check it out here</a>.<br></div><br>
]]>
			</description>
		</item>

		<item>
			<pubDate>Sat, 18 Jul 2015 06:46:47 +0000</pubDate>
			<title>Subscription box pain points</title>
			<link>http://www.candyjapan.com/monthly-subscription-box-tasks</link>
			<guid>http://www.candyjapan.com/monthly-subscription-box-tasks</guid>
			<description>
<![CDATA[
<div>While running our twice-monthly candy subscription box Candy Japan, I've discovered the biggest time spends are marketing, fulfillment, website maintenance, customer support, bookkeeping tasks, curation and investigating directions to expansion and things to improve.&nbsp;</div><br><div><b>Fulfillment</b></div><div>Of these for our twice-monthly candy box, fulfillment was the easiest to delegate to someone else to do, as it is purely manual labor. Some effort is required to gather the list of addresses and sanity-check that the entered addresses and amounts make sense. You can either do fulfillment in-house or hire an outside third-party logistics company.</div><br><div><b>Marketing</b></div><div>Marketing is an activity which you can spend all your time on if you wanted to. There are thousands of places where you could advertise, both paid and free. The options to tweak ad campaigns are endless. Marketing through the seemingly free social media and content-marketing channels is very time-consuming. Somewhere between paid and free is providing free sample boxes for bloggers, which ends up taking time just to evaluate which blogs are worth sending to and keeping in touch with them to maintain the relationships.</div><br><div><b>Customer support</b></div><div>Customer support gets tiresome, as you are often dealing with very similar issues. If you are using a home-grown system, you may find that the information you need to answer these question is buried somewhere in a database which only you understand, which makes outsourcing this more challenging. This is one good reason to use a ready-made subscription management system such as CrateJoy or Subbly. Besides just the usual support questions, there are always new situations occurring which can only be answered by you, meaning with a somewhat successful box you will always end up having some email to answer yourself every day.</div><br><div>For instance I often find myself having to dig for some information manually in our database or try to make educated guesses when a customer requests something to be done, but is emailing from a different address than the one they registered with. These examples sound bad and probably make you feel like “well, that should be easily fixable”. And they are, which is part of the support task, improving things so that those things will no longer get asked.</div><br><div><b>Keeping books</b></div><div>Bookkeeping is required for you to be able to correctly pay taxes and have some picture of whether you are making any profit with your box. It involves mostly storing offline and online receipts and entering their information into spreadsheets. Even with a hired bookkeeper you still end up doing some of this, as when for instance you make an order for some product which will be included in the box, you will be the one who gets the receipt.&nbsp;</div><br><div>When you sign up for an online product such as CrateJoy or ZenDesk, those receipts will get sent to your account. Each month you will need to find all these receipts and summarize them somehow for your books. Last month for out subscription box Candy Japan I had 50 receipts for various purchases and online services and just summarizing this for my bookkeeper takes several evenings to do. Mostly because it is such a dull task it is very easy to get distracted while doing it!</div><br><div>We are paying a bookkeeper, but that doesn’t mean you never need to deal with the issue. You must still be able to explain each receipt and HAVE each receipt. Each time you pay for something online, you have to figure out how to get the receipt for that later. You may be using an email system, a hosting site, buy tape and envelopes online, perhaps travel somewhere and use cash to buy your tickets etc. and for all of these things you will need to have the receipts and organize them in some way. It’s not a huge task, but another thing that needs to be done each month.</div><br><div><b>Curation</b></div><div>This is about finding the items to put in your box. Not every item you can think of is necessarily possible to purchase by you in the desired quantities. You might have a dream box in mind, but find out that half of the items have already been discontinued and are no longer available. Some might be available only in awkward quantities, such as a box of 200 pieces when all you needed was 150.&nbsp;</div><br><div>These limitations mean that to find a box containing 5 items, you might need to investigate more than 10 to be able to settle down to 5 which are practically possible. This can be made easier by using a catalogue of products which you know are available.</div><br><div><b>Growth &amp; improving processes</b></div><div>After these repetitive tasks are dealt with, comes what at least to me is the most interesting part: expansion! This means discovering new marketing channels to try, optimizing your homepage for conversions, improving your box, hiring staff, including new types of inserts in your box etc. things which will change the month-to-month operation, hopefully for the better. You then also get to look forward to other things you could expand to, perhaps increasing the variety of your subscription plans or start/acquire completely new lines of business.&nbsp;</div><br><div>It is also quite enjoyable to think of ways to improve operations, such as eliminating some steps required for putting together your box or finding a way to otherwise not do something you were previously having to do every month. This sort of improvement is very useful for your sanity as well, as it will make you feel optimism: “ah, things can get better!”.</div><br><div><b>Thanks for reading</b></div><div>Can you help me out and let me know how much you would be willing to pay for an ebook on subscription boxes? You can do so here:&nbsp;<a href="https://leanpub.com/subscription-box">Subscription Box - Start and Grow Your Box From 0 to 1000 Subscribers</a>. It will have around ~100 pages of my thoughts and advice on running a subscription box, based on what I've learned running Candy Japan and other subscription boxes for ~4 years.</div>
]]>
			</description>
		</item>

		<item>
			<pubDate>Sun, 21 Jun 2015 01:19:53 +0000</pubDate>
			<title>Stop giving Facebook free ads and traffic</title>
			<link>http://www.candyjapan.com/stop-giving-facebook-free-ads-and-traffic</link>
			<guid>http://www.candyjapan.com/stop-giving-facebook-free-ads-and-traffic</guid>
			<description>
<![CDATA[
<div>Each marketing channel should be judged based on how many new customers it brings and Facebook is no exception. Even if your analytics show that you are getting some conversions from Facebook, it might still be a bad idea. Why?</div><br><div>Suppose you put a Facebook like button prominently on your website. Some of the visitors to your page will click this button. Later on you post something interesting on your page. Some of the visitors who signed up through your page will remember you, click back to your site and then possibly sign up as subscribers. This will look great in your analytics, wow, I gained new customers from Facebook! But these are people that YOU originally sent to Facebook. They were already promising leads and now you are just getting some of them back.</div><br><div>Having a like button seems to be a better choice than not having one, but that’s not really what you should be comparing against. Even if you get someone to like your page, there is no guarantee that you’ll be able to reach that person later, at least not without paying Facebook to boost your posts.&nbsp;</div><br><div>If you had these people as newsletter subscribers instead, you could reach more of them for very little cost and completely control the experience without surrendering control to Facebook. Every company seemingly being on Facebook doesn’t necessarily mean that it is something you are required to do.</div><br><div>Not just this, but having Facebook buttons prominently on your site is basically you giving free advertising to Facebook, sharing your visitor analytics with Facebook for free, creating content for Facebook for free and then to top it all possibly even pay Facebook in the end for post boosts. Think about it. Paying them to reach visitors which you originally gave them for free.</div>
]]>
			</description>
		</item>

		<item>
			<pubDate>Wed, 10 Jun 2015 15:58:30 +0000</pubDate>
			<title>The Big List of Japanese Candy Boxes</title>
			<link>http://www.candyjapan.com/japanese-candy-boxes</link>
			<guid>http://www.candyjapan.com/japanese-candy-boxes</guid>
			<description>
<![CDATA[
<p>Here's a list of every Japanese candy subscription box I've heard of. These are services that for a monthly fee send you candy from Japan periodically.</p>
<h2>Japanese candy boxes timeline</h2>
<p>Here you can see when each Japanese candy box company launched. In case they are no longer around you can also see when each shut down. Created with <a href="https://www.preceden.com/">Preceden Timeline Maker</a>.</p>
<p><img alt="Japanese candy boxes timeline" src="/static/japanese_candy_boxes_timeline.png" /></p>
<h2>Full list of Japanese candy subscription boxes</h2>
<p><a href="http://www.247japanesecandy.com/">24/7 Japanese Candy</a> (first spotted July 2015)</p>
<p><a href="https://www.bokksu.com/">Bokksu</a>  (first spotted February 2017)</p>
<p><a href="https://www.candyjapan.com/">Candy Japan</a>  (the website you are on, service started 9th of July 2011)</p>
<p><a href="http://www.freedomjapanesemarket.com/japanese-snack-subscription-box">Freedom Japanese Market japanese snack subscription</a> (subscription service spotted August 2014, existed prior to that as an online store and shopping service)</p>
<p><a href="http://www.japancandybox.com/">Japan Candy Box</a> (first spotted August 2015)</p>
<p><a href="https://www.japancentre.com/en/japanese_candy_snacks">Japan Centre Snack Box</a> (first spotted April 2016)</p>
<p><a href="http://japancrate.com/">Japan Crate</a> (first spotted July 2014)</p>
<p><a href="http://www.japanesecandyninja.com/">Japanese Candy Ninja</a>  (first spotted May 2017)</p>
<p><a href="http://re-discoveryjapan.net/kizuna-box/">Kizuna Box</a> (first spotted June 2017) </p>
<p><a href="http://mangaspicecafe.com/">Manga Spice Cafe</a> (first spotted April 2017)</p>
<p><a href="http://oyatsubox.com/">Oyatsubox</a> (first spotted March 2014)</p>
<p><a href="https://www.oyatsuchachacha.com/">Oyatsu Cha Cha Cha</a> (first spotted October 2015)</p>
<p><a href="http://www.snakku.com/">Snakku</a> (first spotted October 2014)</p>
<p><a href="https://tokyotreat.com/">Tokyo Treat</a> (launched June 2015)</p>
<p><a href="https://www.nihonbox.com/en/umaibox">UmaiBox</a>  (at least since 2015, originally operated from France as nihonbox.fr)</p>
<p><a href="https://wowbox.jp/">WOWBOX</a> (<a href="https://twitter.com/wowbox_jp/status/631529729212874752">launched August 2015</a>)</p>
<p><a href="https://zenpop.jp/en/japanese-sweets-pack">ZenPop Japanese Sweets Pack</a> (<a href="https://zenpop.jp/blog/post/604/Three-Awesome-Years-of-ZenPop">launched October 2016</a>)</p>
<h2>Status unknown</h2>
<p><a href="https://japanfunbox.com/">Japanfunbox</a> (Since November 2015, had delivered over 2,878 boxes according to page as it was in January 2020, but website no longer works, possibly temporarily down?)</p>
<h2>Dead</h2>
<p><a href="https://forgetsushi.com/">Forget Sushi KyotoBox</a> (since November 2016, around March 2018 stopped subscriptions, but still offers single boxes)</p>
<p><a href="https://www.sushicandy.net/">Sushi Candy</a> (first spotted March 2016, somewhere after May 11 2017 stopped subscription and turned into a store)</p>
<p><a href="https://sweetsofjapan.com/">Sweets of Japan</a>  (since November 2017, but now a wagashi and matcha online store instead of a subscription site)</p>
<p><s><a href="http://tastejapan.net/">Taste Japan!</a></s> (first spotted August 2014, sometime after March 2020 turned into an "under construction" domain parking page)</p>
<p><s><a href="http://www.popuka.com/product/justsnacks/">Popuka - Just Snacks</a></s>  (first spotted September 2016, last confirmed operating August 2019)</p>
<p><s><a href="http://kuubox.com/">Kuubox</a></s> (first spotted November 2015, last confirmed to exist August 2018)</p>
<p><s><a href="http://www.japanlifebox.com/">Japan Life Box</a></s>  (since late 2017, seems to have gone on permanent hiatus within 6 months)</p>
<p><s><a href="https://cravejapan.com/">Crave Japan</a>  (first spotted November 2018, seems to have closed within months)</s></p>
<p><s><a href="https://boxfromjapan.com/home/">Box From Japan</a></s> (first spotted April 2015, seems to have shut down around April 2019)</p>
<p><s>http://okashiconnection.com/</s>  (first spotted June 2014, shut down December 2017)</p>
<p><s>http://skoshbox.com/</s>  (first spotted June 2013, shut down April 25, 2018)</p>
<p><s>http://www.jlist.com/product/SNACKSUB1</s>  (first spotted March 2015, down at least since February 13th 2017)</p>
<p><s>http://www.japanesetreats.com/</s>  (first spotted June 2014, down at least since February 1st 2017)</p>
<p><s>http://oishiibox.com/</s> (first spotted December 2014, last seen August 2015)</p>
<p><s>http://www.shikibox.com/</s> (first spotted November 2014, last seen October 2016)</p>
<p><s>http://www.omnombox.com/</s>  (first spotted January 2015, seems to have disappeared around December 2015)</p>
<p><s>http://www.nandemobox.com/</s>  (first spotted November 2014, down at least since February 1st 2017)</p>
<p><s>http://www.otakyou.com/en/otakyou-box</s> (only seen ever <a href="https://www.japaoemfoco.com/participe-do-sorteio-e-ganhe-um-otakyou-box/">mentioned</a> August 2014)</p>
<p><s>http://www.desubox.com/</s>  (first spotted April 2015, down at least since February 1st 2017)</p>
<p><s>https://japanyum.com/</s>  (first spotted July 2015, down at least since February 1st 2017)</p>
<p><s>http://www.yumecrate.com</s>  (founded by ‎Danny Ta, first spotted July 2016, down at least since February 1st 2017)</p>
<p><s>https://www.japancandymonthly.com/pages/subscribe-now</s>  AKA  <s>http://japancandymonthly.tk/</s>  (founded mid-2016, down at least since June 2018)</p>
<p><s>http://www.okashda.com</s> (first spotted November 2015, last seen February 2016)</p>
<p><s>https://dokidokiboxie.com/</s> (first spotted October 2016, down at least since June 2018)</p>
<p><s>http://www.tokyosweetbox.com/</s> (first spotted August 2015, seems to have disappeared after May 2016)</p>
<p><s>http://marimomarshmallowstore.com/collections/marimo-candy-club</s> (first spotted April 2015, at least since June 2018 they seem to have shut down their subscriptions and become a store only, which later also shut down)</p>
<h2>Thanks for reading</h2>
<p>Is your box is missing from the list? Drop <a href="mailto:me@bemmu.com">me</a> a line. Please note this is only for <strong>Japanese candy subscriptions</strong> — this list does not include stores offering only one-time purchases.</p>
]]>
			</description>
		</item>

		<item>
			<pubDate>Wed, 10 Jun 2015 15:14:54 +0000</pubDate>
			<title>How to Write Candy in Japanese</title>
			<link>http://www.candyjapan.com/how-to-write-candy-in-japanese</link>
			<guid>http://www.candyjapan.com/how-to-write-candy-in-japanese</guid>
			<description>
<![CDATA[
I am going to assume here that your knowledge of Japanese is zero. Well, maybe you know how to say "konnichiha" or "kawaii", but that's about it. Still, right now your biggest desire in life is to just be able to write "candy" in Japanese. Or maybe you want to do this in Photoshop to incorporate Japanese characters into your project. Alright, I'll help you.<br><div><b><br></b></div><div><b>How to say Candy in Japanese?</b></div><div><b><br></b></div><div><div>The saying part is super easy. Just say "candy" and that means candy in Japanese too! I mean, if you are referring to a person's name. If you want to say candy as in the thing you eat, then that would be "ame" for the kind of hard, throat-type candies. "Dagashi" for the kind of cheap candies that parents would often buy for their kids at the supermarket for 10 yen. "Okashi" for the really fancy ones that are fresh and that you would bring as souveniers.</div><div><br><div>For the writing, I think I need to tell you just a bit more background though. There are three writing systex</div><div>ms in Japanese, and as you'll soon see, "candy" could be written in any of them, depending on what you mean by "candy here".</div><br><div><b>If "Candy" is a girl's name</b></div><br><div>In the case of a name, the writing for Candy in Japanese is going to look like below.</div><div><img src="http://www.candyjapan.com/static/candy_in_japanese.png" style="line-height: 1.5em;"><br></div><div>The text is in a writing system called "katakana". You read it from left to right. It's quite similar to this writing system you are already familiar with. Each symbol represents a sound. For example the first one キ with two sticks parallel and another one going through both is read "KI".</div><br><div>To enter this into photoshop, you would first need to install the Japanese input system. Then, switch into Japanese input mode and press the following keys: kyandexi and then press F7 to turn the characters from hiragana into katakana. And there you have it, "candy" written in Japanese letters in your Photoshop.</div><br><div><b>Katakana deep-dive with this Candy example</b></div><br><div>Now you might think it makes no sense that "Candy" would start with "KI". That's why in katakana there are smaller characters which modify how the previous character is read. The next one ャ means that the previous character should be read like "ya", meaning "KI" becomes "KYA".</div><br><div>ン is the easiest. It just means the sound "N".</div><br><div>So up to this point we now have KYA + N = KYAN. Pretty close to the beginning of Candy, just the end still misisng.</div><br><div>The katakana character テ is read TE. But if you put two dots on the upper right, it softens the character, and it is no longer TE but becomes DE instead. After that there is again a small modifier ィ which says "you should read this character to that it ends in an I". All of this means that ディ is read "DI".</div><br><div>Putting all that together, you get KYA + N + DI = KYANDI, which is pretty damn close to "CANDY" that we wanted. That's also probably as close as you can get, because there just isn't enough expressive power in the writing system to really represent all the sounds in the English word "Candy".</div><br><div><b>Candy as the thing you can eat</b></div><br><div>All this time you weren't actually wanting to write anyone's name, rather you were looking for how to write the word meaning a sweet hard candy in Japanese. Well the term for that is "AME" and the character for it is 飴. That might look pretty complicated, but if you write it out stroke by stroke, it isn't so bad.</div><br><div>Below is how to write it, step by step. I just quickly drew this with just using the mouse. In the bottom you can see the completed character. In the upper right is the first stroke you are supposed to draw. To the right of that is the next stroke to draw after that. You can see how each time a simple stroke is added, resulting to the final character.</div><br><img src="/static/candy_kanji.png"><div><br><div>Please check&nbsp;<a href="http://kakijun.jp/page/ame13200.html">another source</a>&nbsp;for a bit more visualy pleasing way to write it. One interesting thing to note here is that what you just wrote does not represent just a sound. It represents the IDEA of a candy. The character you just wrote in a kanji character, which is a whole system of representing ideas using one symbol. If you have an image for every idea, wouldn't there be a lot of symbols? Yes!</div><br><div>In Japanese there are thousands of symbols. There is a symbol for rain, a symbol for a human being, symbol for pain and even a symbol for love (愛). Even with a few thousand symbols it still isn't enough to represent any word, as there are ten thousands of words, but only thousands of symbols. What to do then? Then you combine two or more kanji to make an even bigger idea! Now with the combinations you can cover pretty much anything.</div><br></div><div>For example the kanji for candy we just did (飴) alone does mean candy, but for example combined with the kanji meaning "shop" (屋), it suddenly means "candy store":&nbsp;飴屋.</div><br></div></div>
]]>
			</description>
		</item>

		<item>
			<pubDate>Tue, 09 Jun 2015 14:04:41 +0000</pubDate>
			<title>Banana Flavored Potato Chips</title>
			<link>http://www.candyjapan.com/banana-flavored-potato-chips</link>
			<guid>http://www.candyjapan.com/banana-flavored-potato-chips</guid>
			<description>
<![CDATA[
<div><div>Potato chips are the best-selling snack in the world and you may be familiar with several brands such as the largest brand, Frito-Lay. You might be familiar with spicy ones, barbecue sauced ones or just plain old delicious salty crunchy ones. But in Japan this all-time favorite snack comes in even more varieties.&nbsp;</div><div style="line-height: 1.5em;"><br></div></div><div><span style="line-height: 1.5em;">Here is the latest type of Japanese potato chips. They are made by the company Koikeya, the second largest manufacturer of savory snacks in Japan. Drum roll please.&nbsp;</span>Japan<span style="line-height: 1.5em;">&nbsp;brings you:&nbsp;</span><b style="line-height: 1.5em;">BANANA FLAVORED POTATO CHIPS</b><span style="line-height: 1.5em;">.</span><br></div><br><img id="img3" class="upperImg" src=><div><span style="line-height: 1.5em;"><br></span></div><div><span style="line-height: 1.5em;">Yup. These aren't just plain old banana chips either, but really are potato chips, just with a distinct banana flavor.&nbsp;</span></div><div><span style="line-height: 1.5em;"><br></span></div><div><span style="line-height: 1.5em;">The packaging advertises these as a fusion of the sweetness of banana with the crunchiness of chips. How fancy! If you get extra adventurous, the packaging suggests putting them on top of toast as one way to enjoy the crunchiness.</span><br></div><div><span style="line-height: 1.5em;"><br></span></div><div><span style="line-height: 1.5em;">Actually I'll go try that right now. Meanwhile h</span><span style="line-height: 1.5em;">ere's a </span><a href="https://www.youtube.com/watch?v=yxw0-IUdK_Q" style="line-height: 1.5em;">reaction</a><span style="line-height: 1.5em;"> from the vlogger xcornmuffinx.</span></div><br><img id="img18" class="upperImg" src=><br><br><a href="https://www.youtube.com/watch?v=yxw0-IUdK_Q"><img id="img18" class="upperImg" src=></a><div><font color="#0000ee"><u><br></u></font></div><br><div>So what do you think, want to try some? Which potato chip flavor would you want to see?</div>
]]>
			</description>
		</item>

		<item>
			<pubDate>Thu, 04 Jun 2015 13:44:43 +0000</pubDate>
			<title>Nobody&#39;s Going to Steal Your Idea</title>
			<link>http://www.candyjapan.com/nobodys-going-to-steal-your-idea</link>
			<guid>http://www.candyjapan.com/nobodys-going-to-steal-your-idea</guid>
			<description>
<![CDATA[
<div>I've been meaning to write this for months, but felt a bit hesitant to pen down. </div>

<p><br><div>I started <a href="http://www.candyjapan.com">Candy Japan</a>, our Japanese candy subscription service in July 2011. It was supposed to be business experiment to see what it would it be like to sell something on a subscription basis. It started with just a <a href="https://news.ycombinator.com/item?id=2745694">hacker news post</a> and a trip to the convenience store to pick up some sweets to send. </div><br><div>The idea was that besides actually sending the candy, I would blog about everything I learned while doing it. Treating it as just an experiment, I figured I wouldn't need to be too secretive even with usually sensitive things such as <a href="http://www.candyjapan.com/sales-results-from-getting-3-million-views-on-youtube">marketing experiments</a> or <a href="http://www.bemmu.com/candy-japan-10000">revenue reports</a>.</div><br><div><b>Wow, it's been running for 4 years now</b></div><br><div>Based on what I learned from the "experiment", <span style="line-height: 1.5em;">I expected to have other businesses going by now. The "real ones" based on the information gained from the candy experiment. </span></div><div><span style="line-height: 1.5em;"><br></span></div><div><span style="line-height: 1.5em;">I surely didn't expect to be just sending candy for this long! </span><span style="line-height: 1.5em;">When you have a decent subscriber base, it keeps you going.</span></div><br><div>Candy Japan keeps<span style="line-height: 1.5em;"> occupying this huge space in my head and eats up a ton of my energy. On top of the twice-monthly activity of handling shipping and curation, there's always something that needs to be done or something that could to be tweaked or done better. Kind of like the game Civilization, "just one more turn". Always one more thing to do.</span></div><br><div>As the years and work I've put into this silly project have piled on, I've gradually started feeling more protective. I don't want to feel this way, but I guess it's human nature.</div><br><div><b>The competition</b></div><br><div><div>Being such an extremely niche thing, I thought at most someone reading my posts would think "hmm, I guess this kind of subscription business is pretty neat, I will apply this information to start my own crocodile leather underwear of the month club". But out of so many different things you could be sending in boxes, <a href="http://www.johndcook.com/blog/2012/11/02/nobody-will-steal-your-idea/">I thought it was pretty unlikely</a> that anyone would also bother sending specifically Japanese candy. </div></div><br><div>But actually over the years many others have also started Japanese candy of the month businesses. Possibly just coincidentally (despite the provocative title of this post), although I'd like to think I inspired at least some of them.</div><br><div><b>Japanese candy boxes</b></div><br><div><a rel="nofollow" href="http://oyatsubox.com/" style="line-height: 1.5em;">http://oyatsubox.com/</a></div><div><a href="http://okashiconnection.com/" rel="nofollow" style="line-height: 1.5em;">http://okashiconnection.com/</a></div><div><a href="http://skoshbox.com/" rel="nofollow">http://skoshbox.com/</a></div><div><a rel="nofollow" href="http://japancrate.com/">http://japancrate.com/</a></div><div><a href="http://www.jlist.com/product/SNACKSUB1" rel="nofollow">http://www.jlist.com/product/SNACKSUB1</a> </div><div><a href="http://www.japanesetreats.com/" rel="nofollow">http://www.japanesetreats.com/</a></div><div><a rel="nofollow" href="http://www.freedomjapanesemarket.com/japanese-snack-subscription-box">http://www.freedomjapanesemarket.com/japanese-snack-subscription-box</a></div><div><a rel="nofollow"href="http://oishiibox.com/" style="line-height: 1.5em;">http://oishiibox.com/</a><br></div><div><a rel="nofollow" href="http://tastejapan.net/">http://tastejapan.net/</a></div><div><a href="http://www.shikibox.com/" rel="nofollow">http://www.shikibox.com/</a></div><div><a href="http://www.omnombox.com/">http://www.omnombox.com/</a></div><div><a href="http://www.nandemobox.com/" rel="nofollow">http://www.nandemobox.com/</a></div><div><a rel="nofollow" href="https://tokyotreat.com/">http://tokyotreat.com/</a></div><div><a href="http://www.otakyou.com/en/otakyou-box" rel="nofollow">http://www.otakyou.com/en/otakyou-box</a><br></div><div><a href="http://www.japancandybox.com/" rel="nofollow">http://www.japancandybox.com/</a><br></div><br><div>There also some more generic ones such as <a href="http://www.grubbox.net/" rel="nofollow" style="line-height: 1.5em;">http://www.grubbox.net/</a> and <a rel="nofollow" href="https://www.snackcrate.com/" style="line-height: 1.5em;">https://www.snackcrate.com/</a>.</div><br><div><b>Did you just promote your competitors?</b></div><br><div>Yep, by mentioning them above, I just sent them some nice quality traffic. Why would I do that? </div><br><div>Because from the "business experiment" perspective <span style="line-height: 1.5em;">it's dishonest for me to continue to pretend that they do not exist, when actually I could learn a lot by seeing what they are doing differently. And if I do learn, will I just pretend I magically came up with those ideas? Doesn't feel right.</span></div><br><div>I also want to lower my feeling of protectiveness and the stubborn "sunk cost fallacyish" emotion of having worked on Candy Japan for so long. <span style="line-height: 1.5em;">I'll try to force myself not to get too attached, and write from a bit more objective point of view to truly continue learning.</span></div><br><div><span style="line-height: 1.5em;">So with this out of the way, <a href="https://twitter.com/bemmu">stay tuned</a> for the next post on how this competition has impacted <a href="http://www.candyjapan.com">Candy Japan</a>.</span></div><div><span style="line-height: 1.5em;"><br></span></div><div><img id="img3" class="upperImg" src=></div><br><div></div></p>
]]>
			</description>
		</item>

		<item>
			<pubDate>Fri, 08 May 2015 13:07:56 +0000</pubDate>
			<title>Sales results from getting 3 million views on YouTube</title>
			<link>http://www.candyjapan.com/sales-results-from-getting-3-million-views-on-youtube</link>
			<guid>http://www.candyjapan.com/sales-results-from-getting-3-million-views-on-youtube</guid>
			<description>
<![CDATA[
<div>Dream of having a video of your product in front of millions of viewers? I recently had that dream come true. Without any active effort on my part, Candy Japan got randomly contacted by a <a href="https://www.youtube.com/watch?v=dSCgXVkYQcA">YouTube channel with 300k subscribers</a>.</div><br>Just as a quick summary of what the business is, it's a subscription club where you get random Japanese candy delivered to you twice a month.<div><br><div>So did I become an instant millionaire with the sales that YouTube video drove to the business?&nbsp;</div><br><div><a href="https://www.youtube.com/watch?v=dSCgXVkYQcA">Here's the video</a>.</div><br><a href="https://www.youtube.com/watch?v=dSCgXVkYQcA"><img id="img12" class="upperImg" src=></a><br><div>As you can see, it ended up getting over 3 million views.</div><br><div><b>How I got featured on the channel</b></div><br><div>Here's how it happened. Roughly the following email came in (I just changed it a bit, since I have no permission to quote the actual email).</div><br><div>"<span style="line-height: 1.5em;">We have a channel on YouTube which reviews candy, with over 60 million views 150k views per day. Our candy reviewing segment is one of the most popular shows on YouTube.</span></div><br><div>We think Candy Japan would be perfect for our show. Would you be interested in providing a review sample of your box?"</div><br><div>Since I happened to be around right then, I could shoot back an answer immediately and we got things moving quickly.&nbsp;</div><br><div><b>YouTube viewer stats</b></div><br><div>I shipped them a review box (they credit us in the description) just a month later the video was up. Here are the statistics from YouTube for the video:</div><div><br class="Apple-interchange-newline"><img id="img24" class="upperImg" src=></div><div><span style="line-height: 1.5em;"><br></span></div><div><span style="line-height: 1.5em;">While the video has no actual link to the Candy Japan website, it mentions the site name in large letters in the video. That means the only way people could navigate to the site would be by typing in the URL directly, so all traffic should show up as direct views in Google Analytics.</span></div><div><span style="line-height: 1.5em;"><br></span></div><div><span style="line-height: 1.5em;"><b>Results</b></span></div><br><div>In the statistics for the video, you can see daily views double from around 12000 to 24000. If the video was truly having a big impact, there should be a noticeable jump in views when the jump happens. Here's a screenshot from Google Analytics. Around the middle the big jump should occur.</div><br><div><img id="img27" class="upperImg" src=></div><br><div>Amazing, isn't it?</div><br><div>Actually, nothing happened. The chart looks rather flat. In the middle there should be a huge jump&nbsp;<span style="line-height: 1.5em;">when daily video views doubled. I know the source for the slight spike in the end and it has nothing to do with YouTube&nbsp;</span><span style="line-height: 1.5em;">(it was an <a href="http://www.candyjapan.com/ada_wong">image with a watermark posted on Reddit</a>)</span><span style="line-height: 1.5em;">.</span></div><br><div><b>Conclusion(s)</b></div><div><b><br></b></div><img id="img3" class="upperImg" src=><br><div>Is YouTube a wasted effort, everyone is just channel surfing and not actually out to go away from YouTube? Without a link from the video description, even a very popular video will not necessarily drive direct visits. Conversions are not showing any jump either.&nbsp;</div><br><div>Maybe this video just had a really poor audience from a sales point of view. At least this shows it is not a given that a really popular video will drive sales or even any noticeable amount of visits.&nbsp;<span style="line-height: 1.5em;">Some of you have complained that my blog posts sometimes have a downer ending. Sorry to disappoint, but reality doesn't always make for an upbeat story!</span></div></div>
]]>
			</description>
		</item>

		<item>
			<pubDate>Sun, 05 Apr 2015 11:43:01 +0000</pubDate>
			<title>Candy Japan 2015 Q1 update</title>
			<link>http://www.candyjapan.com/2015-q1</link>
			<guid>http://www.candyjapan.com/2015-q1</guid>
			<description>
<![CDATA[
<div>In 2010 I started a "Japanese sweets of the month" subscription service called <a href="http://www.candyjapan.com">Candy Japan</a> where I send subscribers random surprise candies twice each month in exchange for a monthly payment of $25. I've tried to keep actively blogging about it with unusual openness, perhaps in a bit too revealing detail even, ever since launch. So here's an update on what's been happening since the <a href="http://www.candyjapan.com/2014-year-in-review">last post</a>.</div><br><div><b>Subscriber numbers</b></div><br><div>The subscriber numbers have stayed pretty steady, currently at 970. Staying over 1000 is important not only as a psychological milestone, but because Japanese postal mailing discounts start at 1000. Whenever I've gone slightly under, I've tried to bump it up to this number by sending review boxes. You can <a href="http://www.candyjapan.com/review">apply here</a> if you have a blog and would like to write a review. I will send more review boxes out when I have some extras to send again.</div><br><div></div><div>It's been a pretty eventful start of the year, but not totally in a good way. I've been consumed by practical matters that haven't really improved the service from a customer point of view but that have been things that I've either been forced to do or I chose to do to lessen my workload.</div><br><div><div><b>Tax switch</b></div></div><div><b><br></b></div><div>Firstly switched from paying taxes in Finland to paying them in Japan. Not for tax optimization, but simply after living three years in a new country, in the Finnish system taxation shifts to that country. Since I passed that time limit, it was time to do the switch.</div><br><div>Doing this switch required filing a lot of paperwork all in Japanese, so I had to learn new vocabulary and redo some books. This ended up taking a lot of my focus for the beginning of the year. It was actually a kind of nightmarish situation. I felt completely overwhelmed, as while I manage to get my point across, my Japanese still isn't super advanced.&nbsp;</div><br><div>For a while I was so worried about doing things correctly. I started stressing about all the paperwork I had to do, maybe making a bigger deal out of it in my head than it actually would be if I approached it calmly. My days were filled by reading about tax treaties, checking how to file paperwork in Japanese, meeting with the tax office, emailing and calling the Finnish tax office.&nbsp;<span style="line-height: 1.5em;">It even started impacting my health as I started to eat more and not sleeping well just as a stress response.&nbsp;</span></div><br><div>One of the most difficult parts was that at first it seemed that I would need to split my income into "Japan based income" and "foreign income". But in my own books I was just getting a lump payment that was a mixture of both. I spent a week trying to write code to parse credit card processor statements that would go through all the past activity to split it into the required categories, only in the end to discover that actually I didn't even need to do that, but I <a href="https://github.com/Bemmu/wirecard_email_parser">put it on GitHub</a> in case the codebase would be useful for someone out there.</div><br><div><b>Dead ends</b></div><br><div>I tried to find a manufacturer in China to manufacture boxes and packing tape more cheaply. I contacted three companies through Alibaba, asking for quotes and a template file to design the illustrations, but had trouble getting straight answers on how to proceed, so ended up just continuing to work with the current Japanese manufacturer. So that went nowhere and was again a bit of wasted effort.</div><br><div>I tried to learn more about how to make videos and about photography in general, with the idea of creating some interesting content for getting the club more known among new members. While I've learned a lot of stuff, I'm yet to actually make any videos.</div><br><div><b>Improving customer support</b></div><br><div>I had trouble keeping up with customer support. Although there isn't that much of it, there is enough that if I'm focusing on some other task for a while, enough will pile up that I'll start to dread starting to go through it. After only thinking about taxes for a few days, it felt terrible that my reward for that effort was a big list of support tickets to go through.&nbsp;<span style="line-height: 1.5em;">To combat this I made two changes.&nbsp;</span></div><br><div>Firstly I took an evening to go through past emails and look at what are the most common reasons people email. I discovered about half are requests for free review boxes and the other half are people asking for updates on their orders. I added some new ways for people to get this information themselves by improving the order page and by adding a Zendesk trigger to reply automatically to review requests. This reduced the amount of incoming email a lot.&nbsp;</div><br><div>The second thing was finally getting a newer smartphone and installing the Zendesk app on it so I would get push notifications on new messages. While I won't necessary answer them right when I get a notification, it's a nice reminder to soon make the time to go through support tickets. Now I'm responding to new questions in less than 24 hours on average.&nbsp;</div><br><div><b>Outsourcing returns</b></div><br><div>One task I really dreaded was dealing with bounced packages. Sometimes when you mail a person, they have moved or are not home when a package is delivered. In those cases the package often gets returned back to my home. When you send thousands of packages, if even a small fraction of those gets returned, it means that if I'm away from home for a bit I'll get piles of mail. For each piece of mail I would need to contact the person by email to explain that their mail was returned and somehow make it up to them.&nbsp;</div><br><div>I guess I'm being generous, but even in the cases of wrong addresses I've always taken the blame and tried to make things right, even if technically it isn't really my fault. I feel the club is doing well enough that in edge cases I can always just assume the blame, as it won't end up being that big an expense and I'll have pure conscience that I'm running things well. But to make things a bit easier for myself, I "outsourced" dealing with these returned packages.&nbsp;</div><br><div>I wrote some Python to print barcodes on the back of packages and now they just get scanned if packages are returned, firing off an automatic email explaining the situation to the customer. This means customers have a better experience (faster response) while requiring less work for me. Most importantly, not driving my wife crazy by having our mailbox constantly full (it only fits three packages at a time).</div><br><div><b>In conclusion</b></div><br><div>While subscriber numbers have kept up, it was a pretty challenging start of the year. After finally wrapping up my studies in the end of 2014 I was hoping this year would be just fun-filled awesomeness, but it hasn't turned out like that so far.&nbsp;<span style="line-height: 1.5em;">Hopefully now that I have things under control again, I can start making more changes to more visibly improve things.&nbsp;</span></div><div><span style="line-height: 1.5em;"><br></span></div><div><span style="line-height: 1.5em;">If you would like to try some Japanese candy. In addition to the candy, we also send a twice-monthly newsletter out only to subscribers, containing some more updates from us. You can <a href="http://www.candyjapan.com">sign up here</a>.</span></div><div><span style="line-height: 1.5em;"><br></span></div>
]]>
			</description>
		</item>

		<item>
			<pubDate>Wed, 07 Jan 2015 05:36:49 +0000</pubDate>
			<title>Candy Japan 2014 Year in Review</title>
			<link>http://www.candyjapan.com/2014-year-in-review</link>
			<guid>http://www.candyjapan.com/2014-year-in-review</guid>
			<description>
<![CDATA[
<div><b>Subscriber count triples</b></div><div><b><br></b></div><div><img id="img3" class="upperImg" src=></div><br><div><b>How it started</b></div><br><div><div><span style="line-height: 1.5em;">In 2011 I had recently moved to Japan after my wife landed a job here in Tokushima. Despite having studied the language and working as a programmer before, </span><a href="http://www.kalzumeus.com/2014/11/07/doing-business-in-japan/" style="line-height: 1.5em;">wasn't too keen on becoming a salaryman</a><span style="line-height: 1.5em;"> for a Japanese software company. Instead of becoming an employee, I decided to see if there might be something I could sell online instead.&nbsp;</span><span style="line-height: 1.5em;">I considered a few things I might sell online (ramen? tea?), but settled on sweets quite fast as they seemed like a good balance between fun to subscribe to and easy to send. It was also a good fit for a recurring subscription. I liked the idea of having a subscriber base that would be somewhat stable.&nbsp;</span><a href="http://www.candyjapan.com" style="line-height: 1.5em;">Candy Japan</a><span style="line-height: 1.5em;"> was born with the idea of introducing Japanese sweets to people around the world by sending samples via physical mail twice a month.</span></div><br><div><span style="line-height: 1.5em;">I managed to get a handful of people to sign up to validate the idea even before having a website. After being encouraged by that, I set up a site and did a Show HN post. S</span><span style="line-height: 1.5em;">ome blogs picked it up and quite rapidly I had 300 paying subscribers. As the newness of the idea faded&nbsp;</span><span style="line-height: 1.5em;">it became a bit more difficult to find new members, but I managed to keep the number hovering around 300 for the next three years.&nbsp;</span><span style="line-height: 1.5em;">That was just enough success to keep me going.&nbsp;</span></div><div><span style="line-height: 1.5em;"><br></span></div><div><span style="line-height: 1.5em;"><b>2014</b></span></div><div><span style="line-height: 1.5em;"><br></span></div><div><span style="line-height: 1.5em;">I</span><span style="line-height: 1.5em;">nstead of trying to aggressively expand or start a new project,&nbsp;</span><span style="line-height: 1.5em;">I decided to go back to school to finally finish my M.Sc. degree (just got it for Christmas). While my university is in Finland, what I was mostly lacking was a thesis and a few remaining courses. My professor was kind enough to allow me to complete those remotely. At this point the site was running well enough with many tasks delegated, allowing for the extra time to do this.</span></div><img id="img13" class="rightImg" src=><br><div>To my surprise,&nbsp;<span style="line-height: 1.5em;">while focusing more on writing a thesis and completing some courses&nbsp;rather than promoting Candy Japan,&nbsp;</span><span style="line-height: 1.5em;">it actually started growing like mad.&nbsp;</span><span style="line-height: 1.5em;">During the year subscribers <b>tripled</b> from hovering around 300 to over 900. There were days we sent over 1000 pieces of mail.&nbsp;</span></div><div><span style="line-height: 1.5em;"><br></span></div><div><span style="line-height: 1.5em;">One thing that did improve with the service was occasionally sending some larger boxes and commissioning a professional photo, which was easier to do than I had imagined. Walk to photo studio with box in hand and tell them to take an attractive picture of it, for about $50.</span></div><br><div><span style="line-height: 1.5em;">The pricing and landing page have remained almost the same as before.</span><span style="line-height: 1.5em;">&nbsp;</span><span style="line-height: 1.5em;">We</span><span style="line-height: 1.5em;">&nbsp;kept fulfilling orders that came in and resolving any customer issues, but mostly I kept focusing on schoolwork.</span></div></div><div><span style="line-height: 1.5em;"><br></span></div><div><span style="line-height: 1.5em;"><b>What worked</b></span></div><div><span style="line-height: 1.5em;"><br></span></div><div><span style="line-height: 1.5em;">Looking back the success seems attributable to many small trickles of traffic resulting in a bigger stream. It always seems challenging to know exactly WHY someone subscribed, as it is more likely a combination of things. Anyway, here is what I notice from looking at analytics:</span></div><br><div><span style="line-height: 1.5em;">- Someone wrote a BuzzFeed post that kept slowly sending a new trickle of traffic, which over the whole year resulted in 49 new subscriptions.</span></div><div><span style="line-height: 1.5em;"><br></span></div><div><div>&nbsp;- Procrastinating on Reddit! I noticed an askreddit post titled "<a href="http://www.reddit.com/r/AskReddit/comments/2ntgec/what_is_the_single_most_ridiculous_thing/">What is the most ridiculous thing available on the internet for $25 shipped?</a>". As my subscription happened to cost exactly that, I replied and that led to 28 new subscriptions. This felt like a rush, as I was just wasting time on Reddit and suddenly had 2000 visits that day from just a comment.&nbsp;</div><br><div><div><span style="line-height: 1.5em;">- Blogging about the service here really helped.</span></div></div><div><span style="line-height: 1.5em;"><br></span></div><div>&nbsp;- Many subscription box review sites (that's a thing now) mentioned the site and sent subscribers. I did spend a ton of time sending review boxes to the bloggers, 230 of them in total. Most of those resulted in nothing. I suspect many of these conversions might be people that were already on the site, but went searching online to find reviews before signing up. Still it seems probably worthwhile overall.</div><br><div>&nbsp;- Facebook sent 47 subs, Twitter 11. I'm not sure if these are from organic sharing or my own posts / paid ads. Google Analytics just shows all of these coming from root path of FB and Twitter just reports them as coming from "t.co".</div><br><div>&nbsp;<span style="line-height: 1.5em;">- All of the above made Google like the site more, resulting in twice as much organic search traffic. That was very significant, as search results in hundreds of subs. Or maybe there is just more search traffic for subscription boxes overall?&nbsp;</span></div><div><span style="line-height: 1.5em;"><br></span></div><div><span style="line-height: 1.5em;">&nbsp;- My old AdWords campaign suddenly started working in July, again just a trickle but over the year 34 subscribers on top of everything else. Before that it was essentially dead, but without tweaking anything it started working. Again could be that I was just capturing more people who were already searching for the site.</span><br></div><div><span style="line-height: 1.5em;"><br></span></div><div><span style="line-height: 1.5em;">&nbsp;- Sites like msn.com, lifehacker and huffington post did some "top 10 subscription sites" type listings and mentioned the site with no prompting from me. While those are famous sites, these were very buried links, but still resulted in total 23 new subs.</span><br></div></div><div><span style="line-height: 1.5em;"><br></span></div><div><span style="line-height: 1.5em;"><b>What didn't work</b></span></div><div><span style="line-height: 1.5em;"><br></span></div><div>In 2013 I had <a href="http://www.candyjapan.com/2013-year-in-review">grand plans</a> on featuring different Japanese prefectures, which still sounds like a fun idea, but didn't get around to doing. I also had plans to get the first envelope to subscribers sooner, which was a partial success in that I have a system of doing that now, but still need to reorganize things to be able to ship every day instead of twice a month as we are doing now. I did manage to buy some items directly from a manufacturer, but didn't keep doing it despite the better margin, as it was more helpful to have a middleman help find items for me.</div><div><span style="line-height: 1.5em;"><br></span></div><div><span style="line-height: 1.5em;"><b>Next</b></span></div><br><div>In 2015 I plan to simply keep iterating to improve the service. Outsourcing handling of returns (packages that come back because subscriber moved to new address etc.) is my January focus. I will also look again into offering another subscription tier and see if it might be possible to add a shop for individual purchases. Mostly keep doing what works.&nbsp;</div><br><div>If you have ideas, questions or feedback, feel free to contact me@bemmu.com.<br></div>
]]>
			</description>
		</item>

		<item>
			<pubDate>Sun, 29 Jun 2014 12:31:47 +0000</pubDate>
			<title> Candy Japan crosses $10000 MRR</title>
			<link>http://www.candyjapan.com/candy-japan-crosses-10000-mrr</link>
			<guid>http://www.candyjapan.com/candy-japan-crosses-10000-mrr</guid>
			<description>
<![CDATA[
<div><span style="line-height: 1.5em;">Essentially <a href="http://www.candyjapan.com">Candy Japan</a> is a "candy of the month" subscription service where I send subscribers random surprise candies twice each month in exchange for a monthly payment of $25. Initially I promised to send an envelope every two weeks containing 1-3 items, but eventually I have started to send larger boxes as well, since not all types of items can fit in a slim envelope.</span><br></div><div><span style="line-height: 1.5em;"><br></span></div><div><span style="line-height: 1.5em;">It started from a simple HN post and a comment thread. It grew thanks to several blog mentions to about 300 subscribers. For a long time it seemed the subscriber numbers wouldn't grow past that. But now I'm happy to report that ceiling has been shattered, and recurring monthly revenue has now crossed $10k and customers are reporting that they are happy too. Below is a chart of the subscriber growth.</span><br></div><div><span style="line-height: 1.5em;"><br></span></div><div><img id="img3" class="upperImg" src=></div><br><div><span style="line-height: 1.5em;">Initially I worried about issues with customs, but based on surveys customers are reporting that they are receiving their packages without customs issues. Well, we did have one package where the customs officials opened it and checked whether a pouch of powder was actually candy or something more suspicious, but that is the only reported case out of thousands of packages sent and did not result in any trouble for us or the recipient. Overall everything is working very well. Sometimes packages do get returned to me (usually due to wrong address or customer not being home to accept a delivery) but I always take the time to solve these issues with the customers and resend packages.</span></div><div><span style="line-height: 1.5em;"><br></span></div><div><b>Nice, you have some revenue now, but what about profits?</b></div><br><div>Out of that $10k / month revenue of course not all (not even most) is profit. Compared to a SaaS, the costs are very high, but I've carved enough profit margin to reach an income level similar to a Japanese salaryman now. The major costs are shipping (we use Japan Post) and the products themselves. I'm now spending enough on shipping that people at the post office know me by name. They probably also feel slight terror, as seeing me can mean extra work.</div><br><div>No special discounts yet, but it seems likely I can start enjoying a small discount in the future if the subscriber numbers continue to grow just a bit more. If we send more than 1000 items in a single day then there is a 10% discount. Last time we sent 700 in a single day, so just a bit more growth. Strangely it only matters that I send 1000 items at once. They don't all have to be candy shipments. Actually I've calculated that I might start saving money soon just by shipping some empty envelopes if I really wanted to cross that 1000 limit fast, since the discount is just based on a threshold ;)</div><br><div><b>The meaning of "free review samples" in the chart</b></div><br><div>Lately a small part of those shipments is going for free to blog writers, YouTube video artists and other creative people who have showed an interest in possibly featuring Candy Japan. To help them write their posts or create their videos, I send some samples out. Initially I hesitated to offer the free samples as it quite rarely results in any noticeable traffic at least in Google Analytics, but now I use these review samples to pad out the shipments. The thing is that candy manufacturers don't want to sell you incomplete boxes. You must buy whole boxes, but if a box has 200 pieces of candy in each box but you have say 550 subscribers then you must do something with those 50 extra pieces you would otherwise waste. So whenever I have a situation like that, I send those extra pieces to reviewers. I don't go out looking for reviewers, they seek me out. I get email almost daily from blogs that want to review the shipments, mostly from the community of "mommy bloggers" (that's a thing it seems) and others who are writing product reviews as sort of a hobby. Whether this is the best use for those extra pieces of candy I am not 100% sure, but it does result in some conversions.</div><br><div><b>How shipping is handled now</b></div><br><div><div>Apart from shipping the other major cost is the candies themselves. I haven't been focusing on improving the margins there as much as I could. Instead I chose the path of convenience, where I have an arrangement with a local supermarket. I give them suggestions on which candies I think foreigners might be interested in and they then contact the suppliers to see which ones they are able to get.&nbsp;</div></div><br><div>The suppliers send the items directly to the supermarket I am cooperating with, so there is no longer any need for me to physically receive boxes of candy. Which is great, since we live in the third floor with no elevator and it was getting a bit ridiculous to do all the shipping ourselves in the beginning :-) The relationship with the supermarket built gradually. Since this has been ongoing since 2011, I went from being a strange foreigner bothering the boss with requests for a few dozen extra packs of candy to being the "Bemmu-kun" who casually walks to the back room while employees are slurping noodles in their breaktime. Having orders made for me is easy, but I am throwing away some margin there.</div><br><div>I did make a small breakthrough recently by making the very first purchase directly from a manufacturer. It happened thanks to a fortunate connection I made through Hacker News. Through HN I got introduced to a coworking space in Osaka called Knowledge Salon (thanks @yuzool) and met someone there who is experienced in dealing with Japanese manufacturers. He helped make the initial phone call and thanks to his introduction we made the first order, which was for 550 pieces of a larger candy variety box, which was apparently a large enough order that they felt it was worth their time.&nbsp;</div><br><div>After having the initial phone call made by a fluent Japanese person (and seeing money really getting transferred to their account), they were also willing to deal with me directly. Obviously ordering from them was much cheaper than buying from the supermarket, which enabled me to send subscribers a larger shipment than usual that time. Sadly that manufacturer only makes a certain type of candy (ramune) and their selection is too limited to make many orders from there in the future. But it was encouraging to see that direct buying is possible. I also learned that phone and FAX were still preferred over email.</div><br><div>Going back to our arrangement with the supermarket that I usually use to place orders, after we decide what to send and the supermarket has received the items, I prepare a shipping list for them and the supermarket employees help do the shipping. I have a Python script running in Google App Engine that gathers all the subscribers that are supposed to get a shipment and a PDF file is generated from those (complete with customs forms) that the supermarket can then print and attach to the packages. We used to write each form by hand! Ah, so glad that is now automated.</div><br><div>Our relationship still doesn't really feel much like "drop shipping", as I am physically meeting with the people there several times each month (and buying my groceries while there!). There are many reasons to meet such as handing over my latest candy discovery for them to check with the suppliers, or stacks of cash to pay for a previous shipments or demonstrating how I would like them to pack some special shipment.</div><br><div><b>What are you doing now then that most laborous things have been automated?</b><br></div><br><div>My task is now mainly curation; coming up with a mix of interesting tastes, striking a balance between adventurous and safe choices. To up the element of surprise I sometimes burn some extra money on larger than promised shipments and include DIY-candies and other specialities. Once I even commissioned custom chopsticks to be made with the name of each subscriber carved on them. Everyone loved them, but I ate up my profit that month with that extra gift. It's difficult to resist spoiling my subscribers and hard to remember to keep some profit too sometimes.</div><br><div>Besides curation other tasks that remain for me are responding to customer requests, dealing with bounced packages (because customer moved / entered their address incorrectly / post office made a mistake etc. it happens), content writing, photographing the items, marketing and site improvements.&nbsp;</div><br><div>Content writing is necessary because subscribers might not know what they are eating as all the candy labels are in Japanese. I send a twice-monthly newsletter which describes all the latest sweets. It takes me a day or more each month just to do the research and write the content for that newsletter. Next month I will get some help with this from another foreigner living in Japan who has some experience in blog writing and unlike me is a native English speaker (I'm Finnish), so perhaps he will be able to write some of the candy descriptions in the future. I have also found a local photo studio happy to take better photographs than me armed with my iPhone camera in a poorly lit room.</div><br><div><img id="img0" class="upperImg" src=></div><br><div><span style="line-height: 1.5em;"><b>Handling customer support</b></span></div><div><span style="line-height: 1.5em;"><br></span></div><div><span style="line-height: 1.5em;">A big pain point I had for a long time was dealing with customer support. My personal inbox was getting clobbered by tons of Candy Japan -related support mails (concerning changed shipping addresses, "I forgot to update my address and package was sent to where I used to live", expired credit cards etc.). I began to fall behind in support requests and as my inbox kept getting bigger it made me reluctant to check my email at all, resulting in even more email piling up. The whole thing felt very unorganized and I realized I need to take control of the situation, as it was starting to have an impact on my overall happiness. My solution was threefold:</span><br></div><br><div>1) Switch to a support ticket solution. While still the overall work is the same, now I have a more clear way to mark support requests as having been dealt with, better separation of my personal email from support email and some glimmer of possibility that in the future there is a clear path to delegate this task to someone.</div><br><div>2) I started writing a support manual. If there is some issue that keeps happening, I have started writing those down with clear steps on what to do in those cases. Support is actually easy to do when the response is already known beforehand.&nbsp;</div><br><div>3) When getting an email, spending some time thinking WHY I received that email and how I could PREVENT similar emails from being sent to me in the future. I realized that many of the emails I get were because customers wanted to change or view their subscription details, so I added a simple page on the site where they can do this without needing to contact me. I will still make any requested changes myself as well, but taking steps like these will reduce emails a bit.</div><br><div>After these I am now in a place where my email support workload is gradually getting smaller and easier, instead of in a place where my inbox just gets longer and longer. Now I can deal with support in about 30 minutes each day and from customer perspective have faster and more predictable response times.</div><br><div><b>Thanks for reading</b></div><br><div>You can discuss this post on <a href="http://www.reddit.com/r/Entrepreneur/comments/39s7vq/candy_japan_crosses_10000_monthly_recurring/">/r/entrepreneur</a>.&nbsp;</div>
]]>
			</description>
		</item>

		<item>
			<pubDate>Thu, 06 Feb 2014 10:51:03 +0000</pubDate>
			<title>Candy Japan 2013 Year in Review</title>
			<link>http://www.candyjapan.com/2013-year-in-review</link>
			<guid>http://www.candyjapan.com/2013-year-in-review</guid>
			<description>
<![CDATA[
<div><b>The story so far</b></div><br><div>In July 2011 I posted on Hacker News about an experiment to start a <a href="http://www.candyjapan.com">Japanese candy subscription service</a>. I live in Japan, so the idea was to send surprise candy stuffed into envelopes twice a month to subscribers directly from here. It worked. The word spread. Turns out many liked the idea enough to join as paying members.&nbsp;</div><br><div><div><img id="img7" class="rightImg" src= style="line-height: 1.5em; width: 100%;"></div><br><br><br><div><b><br></b></div><div><b><br></b></div><div><b><br></b></div><div>After the initial Hacker News post in 2011 there were around 100 paying members. End of that year 257 members. Now in 2013 w<span style="line-height: 1.5em;">e grew from 310 subscribers in the beginning of 2013 to 426 at the end. Christmas gave a bigger boost than expected, December being the best month ever to date. Many people bought gift subscriptions, even though there was no Christmas promotion.&nbsp;</span></div><div><span style="line-height: 1.5em;"><br></span></div><div><span style="line-height: 1.5em;">USA, Canada and Germany have the most subscribers. Retention based on first quarter cohort of 2013 is such that out of the 61 people that joined then, 6 months later 22 of them were still around. The curve is such that it seems safe to assume that if someone joins, they stay at least 4 months. That is just the average I can use to figure out lifetime value; some stay years, others immediately quit. Based on older data, even 6 months may not be a crazy assumption.</span></div><div><b><br></b></div><div><b>Emotional roller coaster?</b></div><br><div>Wired contacted me, telling me they were going to mention the site on their website. I got very excited about the prospect, imagining the thousands of paying customers that would surely be hitting my site any moment. It turned out to be just a half-hidden mention in some sub-blog of theirs and brought no customers. Actually even worse, it was one of the last slides in one of those "click here to see next slide" style picture posts that everyone hates.&nbsp;<span style="line-height: 1.5em;">Yet another day someone completely out of the blue included a mention to the club above the fold in a popular BuzzFeed post. Around 30 people subscribed just from that.&nbsp;</span></div><div><span style="line-height: 1.5em;"><br></span></div><div><span style="line-height: 1.5em;">My feelings running this club cycle between "wow, I'm so lucky to have such a cool revenue source" and "what am I doing with my life?". Not the emotional roller coaster of running a full blown venture funded startup, maybe more like one of those kiddy rides where you ride on a cute pig.&nbsp;</span><span style="line-height: 1.5em;">Luckily there have been no true lows and the main direction has been up. I never liked Space Mountain anyway.</span></div><br><div><b>Is this "passive income"?</b></div><br><div>A passive income source is just as passive as you want it to be. You can always spend all your time trying to improve things if you choose to. When you choose not to, you risk being eaten by competition or missing growth opportunities. This has certainly happened to a degree. But what good is a "passive" source if you don't take advantage of the freedom sometimes?&nbsp;</div><br><div>So with this in mind, in 2013 I took some time off for personal pursuits (writing a Master's thesis, passing Japanese JLPT2 and some other licenses) instead of focusing 100% of my time running the site.&nbsp;<span style="line-height: 1.5em;">Not that Candy Japan is even truly passive income anyway, as I do spend a bunch of time each month researching products and dealing with the shipments / customer support, but still I can get away with quite low hours spent if I really want to.</span></div><br><div><b>Things I tried: Playing with packaging</b></div><br><div>Tried using a proper box with more volume instead of just an envelope. The experiment was a success in that I found a supplier for the boxes and managed to do test shipments using them. Turns out that material and work costs for them are quite a bit higher, as it takes more time to put them together.&nbsp;<span style="line-height: 1.5em;">In a customer survey 87% chose they "loved" that shipment, which is the highest happiness so far. Whether to continue using them instead of envelopes will still require some more thinking. Perhaps a physical A/B test where half of the subscribers are sent a different type of package and compare retention (yes, I tend to overthink things). I fear throwing money away for a benefit that only exists in my head.</span></div><div><span style="line-height: 1.5em;"><br></span></div><img id="img14" class="leftImg" src= style="width: 100%;"></div><div><br><br><div><span style="line-height: 1.5em;"><br></span></div><div><span style="line-height: 1.5em;"><br></span></div><div><span style="line-height: 1.5em;"><br></span></div><div><span style="line-height: 1.5em;">Cost of shipping itself is based on weight, so that was not affected. Items with higher volume tend to be more airy, so the weight is not necessarily more even if the volume is larger. For example crisps are less dense than gummies. In addition to possibly higher customer satisfaction, boxes seem very photogenic for blog reviews.</span><br></div><br></div><div><div><b style="line-height: 1.5em;">Playing with pricing</b><br></div><br><div>In 2013 the price was changed from $23.90 to $25.00, with old subscribers grandfathered in to the original price (GRANDPA coupon to get the old price). It seems to have had no difference to signups, however did not do a proper test here. Obviously this being a physical product, the impact to margin is huge from this extra dollar and gives more breathing room to play with different ideas.</div><br><div><div><b>Failure: Inability to do advance planning</b></div><br><div>Tried to get ahead and choose candies for several months in advance. In practice this seems to be impossible, because many products suddenly go out of stock. I can't buy everything ahead of time either, because of shelf life and subscriber numbers changing month to month. It would be nice to have a longer view, as now we are scrambling to choose a nice candy combination just weeks before it is supposed to be going out, with the process repeating twice a month.</div></div><br><div><div><b>Learned more about my customers</b></div><br><div>Ran a questionnaire. The biggest takeaways were that some people were upset with the poor schedule of sending out explanation emails. A surprising 25% of responders claimed to be willing to pay $36 extra per month to get more premium candies. Including more options like these might increase the value of visitors. I always hesitate to create more work or complicate things, as at this stage this is not profitable enough to hire anyone to help full time.&nbsp;</div><br><div>In the questionnaire I also asked member preferences. Learned that the least favorite candy is bubble gum and the most favorite ones are anything strange, gummies and chewy candies. Overwhelmingly people were satisfied with the amount of candy they are getting, some even saying they are getting too much.</div></div><br><div><div><b>Started receiving a torrent of "I want to review your product for my blog" -emails</b></div><br><div>Received about 100 such requests during the year and the pace seems to be accelerating. It is suspicious how many of these I am getting, with&nbsp;<span style="line-height: 1.5em;">the emails somewhat similar to each other.</span><span style="line-height: 1.5em;">&nbsp;Maybe someone has come up with a guide on how to get free stuff from subscription commerce companies? I tend to be a bit suspicious, so before I understand a bit better where these originate I have been hesitating to agree to sending free product out, even though it could be low-cost PR.</span></div></div><br><div><h2>Where to go from here</h2></div><br><div><b>Featuring different prefectures&nbsp;</b></div><br><div>Had the idea to focus each month on a different Japanese prefecture since there are 47 different ones. I could make the club more educational by featuring information, pictures and the mascot of each of them. It was not so simple to arrange though, as apparently many of the products can only be sold inside those prefectures. I learned that not any supermarket can just order any product at will, but that there are regional and other limitations. I would probably need to travel in person to each prefecture and do shipping from those places myself. Which does sound like an adventure.</div><br><b>Negotiating discounts</b></div><div><b><br></b></div><div>I am still buying everything at nearly normal prices and the same goes for shipping. I have already had a meeting with the post office and learned that after hitting 1000 subscribers it could be possible to get a shipping discount. It surprises me that they even have such discount, as if I don't get it, where else would I go? It seems I have no negotiating leverage, but they are nice enough to have them on offer anyway. Same goes for the candies. More subs, bigger discount.&nbsp;</div><div><b><br></b><div><b>Improving time-to-first-envelope</b></div><br><div>Same contents going to all subscribers on the same day reduces effort. Instead of small shipping tasks spread all over the month, there is one intense 20 hour period of activity twice monthly. Hiring someone to help me half an hour each day would be more difficult than having helping hands for a longer time twice a month. Less obvious benefits include being able to print all shipping labels in one shot and getting special treatment from the post office as the shipment size is large that day. Having just one receipt for shipping even reduces bookkeeping work.</div><br><div>So perfect, right? Well, it's not perfect for the customers unfortunately. When someone subscribes, it can take up to 15 days before the next shipment day comes around. Then on top of that international shipping takes time, too. It can take over a month to receive the first item after joining, which understandably creates tension as customers start to question their decision to subscribe and whether they will actually eventually receive something in the mail.</div><br><div>For this reason I am thinking of setting up some "welcome envelope" that would be sent ASAP when a new member joins. The details for this are still open though. The biggest one being that if someone subscribes just for one month, I would end up sending them this welcome envelope in addition to the two regularly scheduled ones. This would possibly negate any profit from such customers, but it could be worth it if it means I can retain more customers that end up subscribing for a longer time if I manage to make them happier from the start.&nbsp;</div><br><div>There are tons of things I want to try and hopefully one year later I can post with some more results. If you have ideas, questions or feedback, please contact me bemmu@candyjapan.com.</div><br><div>Thanks to <a href="http://dangelov.com/">Dinoangelov</a>, makerops, dbarrett and&nbsp;Brucem&nbsp;<span style="line-height: 1.5em;">(check out&nbsp;</span><span style="line-height: 1.5em;"><a href="http://opendylan.org/index.html">Open Dylan</a>,&nbsp;</span><span style="line-height: 1.5em;">he is a big contributor)&nbsp;</span><span style="line-height: 1.5em;">for feedback</span><span style="line-height: 1.5em;">.</span></div><br><br><br></div>
]]>
			</description>
		</item>

		<item>
			<pubDate>Mon, 13 Aug 2012 22:18:05 +0000</pubDate>
			<title>Accepting my first credit card payment without PayPal, part 2/2</title>
			<link>http://www.candyjapan.com/accepting-credit-cards-without-paypal-2</link>
			<guid>http://www.candyjapan.com/accepting-credit-cards-without-paypal-2</guid>
			<description>
<![CDATA[
<div id="magicdomid32" class="ace-line" style="padding-right: 1px; color: rgb(0, 0, 0); font-family: Arial, sans-serif; font-size: 13px; line-height: 17px; "><span class="author-g-7mq3mb1jq9h48dsm" style="cursor: auto; background-color: rgb(227, 199, 255); padding-top: 1px; padding-bottom: 1px; "><div id="magicdomid32" class="ace-line" style="padding-right: 1px; "><span class="author-g-7mq3mb1jq9h48dsm" style="cursor: auto; padding-top: 1px; padding-bottom: 1px; ">This continues from&nbsp;<a href="http://www.candyjapan.com/accepting-credit-cards-without-paypal-1">a previous post</a></span><span class="author-g-7mq3mb1jq9h48dsm" style="cursor: auto; padding-top: 1px; padding-bottom: 1px; ">.</span></div><div id="magicdomid7" class="ace-line" style="padding-right: 1px; "><br></div><div id="magicdomid34" class="ace-line" style="padding-right: 1px; "><span class="author-g-7mq3mb1jq9h48dsm" style="cursor: auto; padding-top: 1px; padding-bottom: 1px; ">After getting accepted by the credit card processing company in Europe I got a contract from them to sign and a short 5 minute (very polite) phone call which was just a small check to verify I'm indeed a real breathing person reachable at the phone number I provided. As mentioned before, I additionally proved my identity by mailing in utility bill and passport copies.</span></div><div id="magicdomid10" class="ace-line" style="padding-right: 1px; "><br></div><div id="magicdomid11" class="ace-line" style="padding-right: 1px; "><span class="author-g-7mq3mb1jq9h48dsm" style="cursor: auto; padding-top: 1px; padding-bottom: 1px; ">In the book "<a href="http://sivers.org/a">Anything You Want</a>" Derek Sivers, who started an online CD store, wrote a bit about how you don't need Terms &amp; Conditions and other such boring corporate stuff for your website. Well, during this process I discovered one reason to have them, as the compliance department would not otherwise accept my sites. Additionally I had to write a privacy policy and do some other minor changes to the site. This process is needed for each "business case" - a site you want to accept credit cards on.</span></div><div id="magicdomid12" class="ace-line" style="padding-right: 1px; "><br></div><div id="magicdomid13" class="ace-line" style="padding-right: 1px; "><span class="author-g-7mq3mb1jq9h48dsm" style="cursor: auto; padding-top: 1px; padding-bottom: 1px; ">Next, I got a login / password to a site where I had to complete a self-assessment to indicate I know how to handle credit card details correctly. Because I am using <a href="http://recurly.com/">Recurly</a> and not touching any credit card details myself, this part was easy to fill and took less than an hour although I felt a bit intimidated to get started (what if I answer something wrong?).&nbsp;</span></div><div id="magicdomid13" class="ace-line" style="padding-right: 1px; "><br></div><div id="magicdomid13" class="ace-line" style="padding-right: 1px; ">Now the merchant account was open with the credit card processor, but their service could not yet talk with the recurring payments solution Recurly. A few days of confusion followed, as I had already received two sets of login / passwords from the credit card processor, but neither of those worked for interfacing with Recurly. Turned out a third set was needed just for API access.</div><div id="magicdomid18" class="ace-line" style="padding-right: 1px; "><br></div><div id="magicdomid45" class="ace-line" style="padding-right: 1px; "><span class="author-g-7mq3mb1jq9h48dsm" style="cursor: auto; padding-top: 1px; padding-bottom: 1px; ">Finally after this I could actually add the hooks to Recurly in my code. Recurly communicates payments to me by POSTing notifications in XML to an endpoint I give them. The Recurly-specific code in my case is about 50 lines of Python and 40 lines of Javascript. Things this code does is showing the payment form, taking note of new subscriptions that are created and adjusting how much candy I owe to each person as money comes in.&nbsp;</span></div><div id="magicdomid47" class="ace-line" style="padding-right: 1px; "><br></div><div id="magicdomid271" class="ace-line" style="padding-right: 1px; ">Money from these transactions then appears on my bank account once a week via wire transfer. Well, there you have it, a simple case of accepting credit cards from start to end. Please <a href="http://news.ycombinator.com/item?id=4378490">comment on Hacker News</a> or email me@bemmu.com.</div></span></div>
]]>
			</description>
		</item>

		<item>
			<pubDate>Wed, 20 Jun 2012 09:33:18 +0000</pubDate>
			<title>Delegating a task successfully on oDesk</title>
			<link>http://www.candyjapan.com/delegating-a-task-successfully-on-odesk</link>
			<guid>http://www.candyjapan.com/delegating-a-task-successfully-on-odesk</guid>
			<description>
<![CDATA[
<div>If you've ever kept a diary of what you spend your time on, you might be surprised to notice how little of it is spent on&nbsp;"core stuff that actually takes me forward".&nbsp;To increase profitable time, you either cut away time sinks or leisure time spending, or find a way to create more time by delegating. If you have a limited budget, freelancer sites like vWorker, oDesk and elance enter the picture for the delegating part.<br></div><div><br><div>I've tried vWorker before with bad results. I commissioned some content creation work and being inexperienced at this, I just hired a random applicant who proceeded to copy &amp; paste content from other sites instead of creating original work.&nbsp;To educate myself about finding the right workers, I've decided it's time for another experiment, which I'm calling "the $500 management training program". It means that during what's left of this year I am going to spend no less than $500 attempting to delegate tasks on oDesk, no matter what. I consider this money gone already, it's an education fee to learn how to find workers without getting scammed again and hopefully discover good people that I can assign more tasks to again in the future.</div><div><br><div>I am happy to say the experiment has started off quite well and oDesk is much nicer to use than vWorker. So far the tasks I allocated were redesigning a Facebook app (UX work) and doing an illustration for Candy Japan. With the app redesign I had another failure, the freelancer either misunderstood the task or couldn't do it.&nbsp;I did communicate the work poorly and did not pick the worker carefully at all. Another worker thought the whole job was just about zipping files (since I asked for the results to be delivered as a zip file) but didn't understand that they were supposed to actually create the content for the file too.</div><br><div>The illustration one however I'd like to consider the first clear success. Instead of posting an open job, I went through several portfolios before deciding who to send my offer to.&nbsp;I made it absolutely clear what I wanted (by sending her a very crude mockup), outlining what I wanted to appear in each panel and trying to respond to messages as fast as possible. I'm quite satisfied with the end result, it looks so good that it could appear in a published comic book. How much would you think this cost me? The answer is inside the next paragraph, but take a guess first.</div><a href="http://www.candyjapan.com/"><br><img src="http://www.candyjapan.com/static/how_it_works_with_text.png" width="879" id="img16" height="382"></a><br><br><div>I have seen manga illustrators at work here in Japan, it is incredible how fast a professional can produce great quality works, so I have trouble guessing whether it took her 30 minutes or a whole day to do this. In any case, I paid her fifty dollars.&nbsp;The compensation would seem low to me considering the quality of work, however for someone in the Philippines depending on the hours spent it may be a reasonable amount.&nbsp;</div><br><div>Comments welcome by email to me@bemmu.com or on <a href="http://news.ycombinator.com/item?id=4136239">Hacker News</a>.&nbsp;I try to respond to everything.&nbsp;<a href="http://www.candyjapan.com/rss.xml">RSS feed</a>. Thanks to&nbsp;<span style="text-align: -webkit-auto; ">kephra, bradleyStC, brownies, ziyadb and bonsaikitten on #startups for feedback.</span></div></div></div><div><span style="text-align: -webkit-auto; "><br></span></div>
]]>
			</description>
		</item>

		<item>
			<pubDate>Wed, 06 Jun 2012 10:56:48 +0000</pubDate>
			<title>Accepting my first credit card payment without PayPal, part 1/2</title>
			<link>http://www.candyjapan.com/accepting-credit-cards-without-paypal-1</link>
			<guid>http://www.candyjapan.com/accepting-credit-cards-without-paypal-1</guid>
			<description>
<![CDATA[
<p style="color: rgb(34, 34, 34); font-size: 13px; text-align: -webkit-auto; background-color: rgba(255, 255, 255, 0.917969); font-family: Arial, sans-serif; line-height: 17px; "></p><p>This is a bit of "behind the scenes" post. We've been selling&nbsp;<a href="http://www.candyjapan.com/" target="_blank" style="color: rgb(17, 85, 204); "></a><a href="http://www.candyjapan.com">surprise japanese candy subscriptions</a>&nbsp;online for about a year now, all through PayPal up to now. Today, we finally charged our first customer without them.&nbsp;<br></p><p>There's a lot of PayPal hating out there, but personally I've never had any major issues accepting payments through them. I've been a user for years and accepted thousands of payments. Still, I thought it was a bit risky to solely rely on them and conversions might also be taking a hit every time I throw a user off to PayPal land instead of just asking for their credit card info on my own site, so about half a year into the Candy Japan project I started to look a bit more seriously into it.&nbsp;</p><p>It started when I came across a free ebook (eleaflet?) called "<a href="http://feefighters.com/ebooks/what-is-credit-card-processing" target="_blank" style="color: rgb(17, 85, 204); "></a><a href="http://feefighters.com/ebooks/what-is-credit-card-processing">How to be a Credit Card Processing Ninja</a>" (author told me it is no longer updated since FeeFighters got acquired). It explained how the whole system of accepting credit cards roughly works.&nbsp;Gaining a bit of understanding of the process motivated me to push on.&nbsp;Not all of it applied to me, as I wasn't really in the position to start comparing payment gateways against each other, my problem was more about finding one that would even accept me as I'm not based in the US. Before I realized that I did try contacting Braintree and Authorize.net. From Braintree the reply was "We are currently only set up to provide merchant accounts for businesses with a physical U.S. presence" and the same for&nbsp;<a href="http://authorize.net/" target="_blank" style="color: rgb(17, 85, 204); ">authorize.net</a>. So how about Stripe?</p><p>In 2011, on impulse I signed up for the&nbsp;<a href="http://www.startupschool.org/" target="_blank" style="color: rgb(17, 85, 204); ">Startup School</a>&nbsp;event, which is a Y Combinator event consisting of lectures and mingling with other startup founders.&nbsp;I flew over from Japan and watched the presentations in total jetlaggety state (protip: if flying over, give yourself time to rest before the actual event begins). There were YC company office visits available, one of those being Stripe. They're a cool&nbsp;<a href="http://www.fastcompany.com/1813087/stripe-startup-paypal-google-checkout-peter-thiel-elon-musk" target="_blank" style="color: rgb(17, 85, 204); ">payment processing company backed by Elon Musk</a>&nbsp;among others, who interestingly was one of the founders of PayPal. I got to chat personally with the Stripe guys, but sadly it turned out that they wouldn't be able to help me either, I really need to be in the US to use them.</p><p>Well, I wasn't in any particular hurry to get a new payment system up since PayPal was working OK, so several months passed while I just kept my eyes open for any new information. On Hacker News I kept noticing several mentions about services that help you manage automatic billing, such as Recurly and Chargify. One evening I was just randomly browsing the Recurly support site, fully assuming I wouldn't be able to use them. Going through their list of "additional payment gateways", right near the end it mentioned a European payment gateway company I hadn't heard of so far.</p><p>Checking up on them I found out they can also help other Europe-based businesses take credit cards.&nbsp;I still wasn't sure if I could be accepted there, so I sent them an email to see if they might really be able to help. I got a response very quickly and just a week later our discussion had proceeded to the point where I had their price list, along with a list of documents I would have to provide to them. In the end being a sole proprietor not all of the items on the list applied to me, but I did end up sending them (in case you are thinking of doing this): an official certification of incorporation, a copy of my passport, a description of the ownership structure (using a form which they provided me), copy of a utility bill to prove my residence, a document where I free-form explained what kind of things I would be charging for and then finally a signed copy of contract to open the account with them.</p><p>This might seem like a lot of documentation to provide, but in the end the application process was tolerable and everyone I interacted with at the gateway company responded very fast and helped me through the process, providing me with help on any specifics, making the process smooth. That wasn't the end of it though (about halfway through), so in my next post I plan to share how the process was finalized and all the final steps I had to take before I finally saw my first Recurly transaction come in.</p><p>Thanks for reading and do check out&nbsp;<a href="http://www.candyjapan.com/" target="_blank" style="color: rgb(17, 85, 204); ">Candy Japan</a>&nbsp;if you'd like to see the shiny new credit card sign-up form in action (and some exotic munchies). Here's how we celebrated our first accepted payment.<br></p><p>STARTYOUTUBENye3m4bgNAoENDYOUTUBE<br></p><p></p>
]]>
			</description>
		</item>

		<item>
			<pubDate>Mon, 14 May 2012 09:44:30 +0000</pubDate>
			<title>Candy Japan April income report</title>
			<link>http://www.candyjapan.com/april-profit-report</link>
			<guid>http://www.candyjapan.com/april-profit-report</guid>
			<description>
<![CDATA[
How much money can you make by sending surprise candy to people around the world? I see no reason not to be open about how things are going, since I am approaching this whole venture as a learning experience. Here goes line by line from initial revenue through expenses to the final profit number.<div><br><div><div><div>Total revenue for April was $7234 from 312 subscriptions. We don't get to keep most of this money as there some very real expenses too. First thing is PayPal fees, after which we are left with $6895. We are switching from PayPal to accepting credit cards directly through WireCard + Recurly, but that will likely just raise our costs a bit (but will hopefully improve conversions).</div></div><div><br><div>Sending packages internationally and buying the items inside of those envelopes are our biggest costs, about $6.40 / month / subscriber for shipping and $5.80 / month for the items. After these, we are left with about $3088. Envelopes and packing materials aren't free (pretty close though). Those are about $0.50 / subscriber, so we are left with $2931.</div></div></div><br><div>Sometimes mail isn't delivered properly (usually address was wrong) and we have to send packages again, sometimes also replacing the items. We don't charge the customers for this but just re-send after confirming the address (as it very well might be our fault or just random error in postal delivery), so after accounting for this, we have about $2805 left.</div><br><div>We send things twice a month. 312 subscribers means stuffing 624 envelopes each month, which is time-consuming manual work. Luckily at this point we have managed to outsource this. After paying for that outsourced service, we have about $2450 left.&nbsp;We have an accountant doing the books. They charge $75 / hour and spend a little over an hour on Candy Japan -related things (I have other projects they also handle), costing roughly $100 / month. After that there's $2350 left.</div></div><br><div>One expense has been marketing experiments, such as buying ads on Facebook and other sites, which so far have been almost complete failures. The costs vary, but last month it was $260. After that there's $2090 left.&nbsp;We have to buy some misc. things like camera equipment, computer stuff, candies for deciding what to pick the next time, pay for website hosting (App Engine) etc. so after all these misc. things I feel safe saying we would have about $2000 left.</div><br><div>Now this sum is finally income. As a Finnish citizen I am paying about 20% taxes and other fees (such as health insurance) on this, so the final sum we get to spend on our rent, food, champagne and overpriced Steam first-person shooter games is about <b>$1600</b>. This is quite good I think, almost matching my <a href="http://www.bemmu.com/what-it-costs-to-live-in-japan">living expenses in Japan</a>.<br></div><br><div>Thanks for reading, and please do <a href="http://www.candyjapan.com">give our service a shot</a> if you're not a subscriber yet. The RSS feed for this blog is <a href="http://www.candyjapan.com/rss.xml">here</a>.</div><br><div><small>Note: The average subscription fee in this calculation is lower than what is advertised on the website, because in the past subscribers had the option to choose to pay either in USD or EUR. Some people chose EUR and because the value of that currency hasn't been too great lately, they are now paying a bit less for their subscriptions in USD terms.</small></div><br>Thanks to <a href="http://www.micrypt.com">micrypt</a>,&nbsp;blackwhite, davidw and salisbury&nbsp;on irc.freenode.net #startups for valuable feedback on this post.<br>
]]>
			</description>
		</item>

	</channel>
</rss>
