Analytics for your interactive story

Steph_McNeal

Experienced
Joined
Mar 12, 2026
Posts
33
Just thinking about how tremendously helpful it would be to know how the readers interact with your story. Knowing which paths are popular, where readers bail, where they get stuck or what they gravitate to would allow us to craft way better experiences.

Now, I'm not a developer but I can imagine this should be one of the main advantages of interactive stories. People interact with the stuff. So capture that interaction somewhere, and you have a goldmine of info on what works and what doesn't. Unfortunately, from what I understand, no such thing exists for Ink. And even if it did, doubt if this platform would implement it anytime soon.

All we have to go on now, is some vague indicators of popularity; the vote score mainly. It tells you if people generally like or dislike the whole thing. Which is nice, but hardly helpful. If you are very lucky, readers take the time to leave some pointed feedback in the comments.

I thought of a very primitive analytics system that maybe could offer a glimpse into how your readers move through your creation. Maybe I'll give it a shot in my next story.

Basically, you create a variable that will store all choices the reader makes.
Then at every choice, you add a keyword representing the reader's choice. This happens without the reader noticing.

Code:
VAR analytics = ""

Once upon a time...

 * They went on a date
 ~ analytics = analytics + "date "
 -> date
 * They ignored each other.
 ~ analytics = analytics + "ignore "
 -> ending
 
 === date ===
 
 The date went well.
 
* They made out.
~ analytics = analytics + "+ madeout "
-> ending
* But they never spoke again
~ analytics = analytics + "+ neveragain "
-> ending

Then at the end of the story, just before the final -> END-divert, you print out the whole thing, and ask the reader to kindly, pretty please, copy and paste it in the comments.

Code:
 === ending ===

And that is the end of the story.

________________

This is the path you chose.

{analytics}

Would you be so kind to copy and paste this in the comments?

    -> END
In the above example, going for the date option, then making out will print out 'date + madeout'.

So in theory, a reader that leaves a comment like: "Love your story!" or "Booo, you suck!" can now also easily include their entire journey. Those comments will provide you with a valuable insight into what this particular reader did to come to that conclusion.

You don't even need to tag all choices. Just the important ones, that divert to a different storyline, will already tell you a lot.

As said, it is very primitive and has a bunch of drawbacks.
  • It's only useful if people actually leave this in a comment. Only a small minority ever leaves a comment, so don't expect a pile of data to work with.
  • Even if you do get a lot of comments, you have to go through them manually and draw you conclusions.
  • In this setup, the variable is only printed at the very end of the story. That means you'll only get to see the paths from the people that actually finished the whole thing. People that got stuck, gor bored or bailed for any other reason won't show up on the radar unfortunately.
But it's better than nothing, I guess.

Any thoughts?
 
I like your analytical view of things. But I guess the main point would be to get knowledge of the masses, and only some (small, I assume) part of users would copy-paste the path. There would be only some selected part of people, i.e. specially nice people, analytically minded people or something, and that would skew the results.

Myself I want to serve the readers, and this would make it harder for them. They don’t have to copy-paste, but it’s asked, so they would be ”bad people” if they didn’t.

Were there some plans to renew the whole Literotica interactive stories system?
 
Yeah, 'analytics' is not even the right term here. It's more a way to gather some more and useful feedback from readers. The result would indeed be heavily skewed, but like I said: the alternative is that you have absolutely zero idea what happens with your story. Who knows what insights this little peek gives you, that you can use to your advantage for a next story?

I'm sure it can be done in a way that doesn't guilt-trip the reader. It's a small favor to ask, no need to make them feel bad if they ignore it.
I'm thinking of rewarding ones who (claim) to have left a comment with an extra scene or Easter egg or something.

I don't know of any plans to renew the system, but if there are they don't seem imminent. And even if they do revamp the whole thing, I doubt this would be a feature. I looked around, it seems like nothing exists at the moment. So Lit has to build it themselves which I don't think they'll do.
 
Well I don't want to leave an open end here, so a quick update on what I ended up doing in my story game and how it works:

I chose not to include every single choice in the summary. Instead, I only tracked which of the two main branches the readers took, and which of several endings they ended up on. This is easier to implement and tells me the most important things. It's also more user friendly, since it allows for a readable printout like: "you chose to have sex with the girl (path). Unfortunately she ran out of patience (ending)"

To entice readers to actually post this, I've written an extra scene, bit of an Easter egg. When they reach an ending, they'll see their summary with a kind request to post this as a comment. Finally, there are two choices: 'yes I left a comment' and 'No, I didn't'.

The 'no' option will display a short, friendly 'no worries!' kind of message. The 'yes' shows the extra scene. Of course nothing is stopping a reader to click yes and then post no comment. But oh well...

Does it work?

Well yes and no. Story games just generate very few comments in general, so I doubt it will ever provide valuable data. I do already have a handful of readers leaving their summary and it offers a nice insight into how they experience the story. If nothing else, it does seem to drive engagement a bit. All in all, I would implement it again for my next story, mostly as a way to generate comments, not so much as 'analytics'.

So...that.
 
Coming back to this. So far, 22 people posted their summary. Out of 18K views, that doesn't qualify as 'analytics'. But like I said, it does offer a fun insight. A little peek in how readers travel through the story that I'd otherwise never get.

I threw it in a flowchart real quick and a pattern of the most popular path is emerging.
 

Attachments

  • Start.jpg
    Start.jpg
    72.4 KB · Views: 7
Really nice flowchart. I love how the thickness of the paths show which are the hottest. How did you generate it? I'd love to be able to do something like that quickly instead of spending half a day on it.

I've spent a bit of time as a frontend web developer. That said, I'm mostly wrangling servers and datacenters these days.

I can see the game state being stored by looking for `Pt()?.data` in the HTML source. I captured this screenshot after clicking the "What's the alternative" option so the game engine is 1/2 way through rendering the next 3 options. Getting that data feels like it'd be really informative.

1779683356420.png

The Inkly documentation says you can enhance your stories with your own HTML, **********, and CSS. Of course, that's if you're more of a game developer with full control. Since Literotica is a hosted platform... I wonder if they allow a custom `<script>` tag? Probably not. It would be a potential vulnerability to be exploited by hackers.

Even if they did allow an Author's custom code to run on the page I don't know where you'd be able to see the user's steps through the story. It'd have to be a page on literotica.com. You could have the custom code post their data as a comment but that'd be a shady thing to do to someone. Posting the story flow to the forums might be a bit less unpleasant but it'd out everyone who read your story.

Really, I'd want the site maintainers to gather and sanitize the data then share just a nice-looking graph for the Authors to look at.

I spent a few hours last night trying to find all the possible endings. I've always liked games with all sorts of outcomes for the characters so I can dwell on the good endings for the characters I like and the bad endings for those that I thought deserved it.

Perhaps you could render a simple graph (in text??) at the END with all the endings numbered and a check mark next to the one the user landed on? Then you could ask them for a number instead of a big block of text which might get better traction.
 
That flowchart is just cobbled together in Canva. Counting the comments, then adjusting the lines by hand. It's not exactly half a days work, but also not something I'm going to do very often. Ideally, it should indeed be an automatic process, or provided by Literotica.

They don't allow custom scripts. They barely allow text formatting tags, it's pretty closed off.

Perhaps you could render a simple graph (in text??) at the END with all the endings numbered and a check mark next to the one the user landed on? Then you could ask them for a number instead of a big block of text which might get better traction.
This is also a very nice idea. I agree that a simple number would make it easier for me to parse.

What I do like about the current 'block of text' is that it keeps the comment section somewhat human-readable. The different summaries not only benefit me. They can also serve as a teaser for people who finished the game once or twice, to see if there might be another ending they want to look for. That's why they are descriptive, but spoiler-free.

If anything, that might be the main advantage here: a lively comment section. This story would've never had 50+ comments otherwise, for what it's worth.
 
Back
Top