Faits :
A.
Par jugement du 23 novembre 2017, le Tribunal de police de l'arrondissement de Lausanne a reconnu X._ coupable d'escroquerie et de faux dans les titres et l'a condamné à une peine privative de liberté de 7 mois, cette peine étant entièrement complémentaire à celle prononcée contre lui le 25 mai 2017 par le ministère public de l'arrondissement de Lausanne. Il a renoncé à révoquer le sursis qui lui avait été octroyé le 20 mars 2013 par le ministère public lausannois.
Par ce même jugement, Y._ a été reconnue coupable d'escroquerie et condamnée à une peine privative de liberté de 7 mois.
B.
Statuant sur appels de X._ et de Y._ par jugement du 9 mai 2018, la Cour d'appel pénale du Tribunal cantonal vaudois a partiellement admis celui de Y._ et l'a condamnée à une peine pécuniaire de 180 jours-amende à 30 fr., avec sursis, cette peine étant entièrement complémentaire aux peines prononcées contre elle les 31 octobre 2013, 21 janvier 2014 et 25 juin 2014. La cour cantonale a rejeté l'appel formé par X._.
En substance, la cour cantonale s'est fondée sur l'état de fait suivant.
B.a. X._ et Y._ se sont mariés en 2002 et ont eu deux enfants, nés en 2006 et 2008. Les époux se sont séparés devant le juge civil le 9 mai 2014.
De juin à septembre 2006, en avril 2007 et de juillet à octobre 2007, bien qu'expressément interpellé sur l'exercice d'une activité rémunérée, X._ a dissimulé à l'Etablissement A._ son activité professionnelle et les revenus obtenus. Il a bénéficié de prestations financières de l'Etablissement A._ à hauteur de 11'929 fr. 55. L'Etablissement A._ l'a dénoncé pour ces faits le 31 octobre 2016.
Depuis 2007, X._ et Y._ ont bénéficié indûment de prestations financières de l'aide sociale pour un montant total de plus de 42'200 francs. Jusqu'en avril 2014, X._ a notamment régulièrement caché des revenus en signant des décomptes de prestations erronés et en complétant mensongèrement des formulaires d'aide financière alors qu'il avait été rendu attentif à son obligation d'annoncer immédiatement toute prise d'emploi. En septembre et novembre 2012, il a falsifié des fiches de salaire qu'il a remises au centre social régional. Il n'a pas annoncé l'existence de comptes bancaires ouverts à son nom alors qu'il savait qu'il était tenu de remettre, sur demande, le relevé de ses relations bancaires. Après leur séparation, X._ a perçu indûment 700 fr. en dissimulant cette somme entre avril et novembre 2014. Ces faits ont été dénoncés les 19 février et 7 juin 2016.
B.b. Le casier judiciaire de X._ fait mention de quatre condamnations par le ministère public de l'arrondissement de Lausanne:
.a) Le 20 mars 2013, il a été condamné pour délit à la loi sur l'assurance-chômage (loi fédérale sur l'assurance-chômage obligatoire et l'indemnité en cas d'insolvabilité; LACI; RS: 837.0) à une peine pécuniaire de 60 jours-amende avec sursis (2 ans).
.b) Le 25 juin 2014, une peine pécuniaire de 30 jours-amende avec sursis (2 ans) a été prononcée pour escroquerie, peine complémentaire à celle prononcée le 20 mars 2013.
.c) Le 6 juin 2016, le ministère public l'a condamné à une peine pécuniaire de 30 jours-amende avec sursis (2 ans) et à une amende de 300 fr. pour violation grave des règles de la circulation routière.
.d) Le 23 mai 2017, X._ a été condamné pour conduite sans autorisation et contravention à l'ordonnance réglant l'admission des personnes et véhicules à la circulation routière, à une peine privative de liberté ferme de 60 jours ainsi qu'à une amende de 100 francs.
C.
X._ forme un recours en matière pénale auprès du Tribunal fédéral contre le jugement cantonal et conclut, avec suite de frais et dépens, à sa condamnation à une peine pécuniaire de 180 jours-amende à 30 fr. le jour, avec sursis pendant deux ans, peine complémentaire à celles prononcées les 20 mars 2013, 25 juin 2014 et 6 juin 2016 par le ministère public lausannois. Subsidiairement, il conclut à l'annulation du jugement cantonal et au renvoi de la cause à la cour cantonale ou à l'autorité de première instance pour nouvelle décision. Il sollicite le bénéfice de l'assistance judiciaire.
Invités à se déterminer sur le mémoire de recours, tant le ministère public que la cour cantonale y ont renoncé, se référant aux considérants de la décision entreprise.
Considérant en droit :
1.
Le recourant ne conteste pas sa condamnation des chefs d'escroquerie et de faux dans les titres. Il reproche toutefois à la cour cantonale d'avoir prononcé une peine privative de liberté de sept mois en violation des art. 47 et 49 al. 2 CP. Il estime que sa peine est exagérément sévère, notamment en comparaison avec celle infligée à son épouse.
1.1. Tant l'escroquerie (art. 146 CP) que le faux dans les titres (art. 251 CP) sont passibles d'une peine privative de liberté de cinq ans au plus ou d'une peine pécuniaire.
1.1.1. La peine pécuniaire constitue la sanction principale dans le domaine de la petite et moyenne criminalité, les peines privatives de liberté ne devant être prononcées que lorsque l'Etat ne peut garantir d'une autre manière la sécurité publique. Lorsque tant une peine pécuniaire qu'une peine privative de liberté entrent en considération et que toutes deux apparaissent sanctionner de manière équivalente la faute commise, il y a en règle générale lieu, conformément au principe de la proportionnalité, d'accorder la priorité à la première, qui porte atteinte au patrimoine de l'intéressé et constitue donc une sanction plus clémente qu'une peine privative de liberté, qui l'atteint dans sa liberté personnelle (arrêt 6B_559/2018 du 26 octobre 2018 consid. 1.1.1 destiné à la publication; ATF 134 IV 97 consid. 4.2 p. 100 ss). Le choix de la sanction doit être opéré en tenant compte au premier chef de l'adéquation de la peine, de ses effets sur l'auteur et sur sa situation sociale ainsi que de son efficacité du point de vue de la prévention. La faute de l'auteur n'est en revanche pas déterminante (arrêt 6B_559/2018 du 26 octobre 2018 consid. 1.1.1 destiné à la publication; ATF 137 II 297 consid. 2.3.4 p. 301; 134 IV 97 consid. 4.2 p. 100 s.).
1.1.2. Le juge fixe la quotité de la peine d'après la culpabilité de l'auteur (art. 47 CP). Elle doit être évaluée en fonction de tous les éléments objectifs pertinents, qui ont trait à l'acte lui-même, à savoir notamment la gravité de la lésion, le caractère répréhensible de l'acte et son mode d'exécution. Du point de vue subjectif, sont pris en compte l'intensité de la volonté délictuelle ainsi que les motivations et les buts de l'auteur. A ces composantes de la culpabilité, il faut ajouter les facteurs liés à l'auteur lui-même, à savoir les antécédents, la réputation, la situation personnelle, la vulnérabilité face à la peine et le comportement après l'acte et au cours de la procédure pénale (ATF 141 IV 61 consid. 6.1.1 p. 66 s. et les arrêts cités). Le juge exprime dans sa décision les éléments essentiels relatifs à l'acte ou à l'auteur qu'il prend en compte, de manière à ce que l'on puisse constater que tous les aspects pertinents ont été pris en considération et comment ils ont été appréciés, que ce soit dans un sens aggravant ou atténuant (art. 50 CP; cf. ATF 136 IV 55 consid. 5.5 p. 59). La motivation doit justifier la peine prononcée, en permettant de suivre le raisonnement adopté (ATF 141 IV 244 consid. 1.2.2 p. 246). Le juge n'est toutefois pas tenu d'exprimer en chiffres ou en pourcentages l'importance qu'il accorde à chacun des éléments qu'il cite (ATF 136 IV 55 consid. 5.6 p. 61).
1.2.
1.2.1. Aux termes de l'art. 49 al. 1 CP, si, en raison d'un ou de plusieurs actes, l'auteur remplit les conditions de plusieurs peines de même genre, le juge le condamne à la peine de l'infraction la plus grave et l'augmente dans une juste proportion. Il ne peut toutefois excéder de plus de la moitié le maximum de la peine prévue pour cette infraction. Il est en outre lié par le maximum légal de chaque genre de peine.
Pour satisfaire à cette règle, le juge, dans un premier temps, fixera la peine pour l'infraction la plus grave, en tenant compte de tous les éléments pertinents, parmi lesquels les circonstances aggravantes ou atténuantes. Dans un second temps, il augmentera cette peine pour sanctionner les autres infractions, en tenant là aussi compte de toutes les circonstances y relatives (arrêt 6B_559/2018 du 26 octobre 2018 consid. 1.1.2 destiné à la publication; ATF 127 IV 101 consid. 2b p. 104; arrêts 6B_1175/2017 du 11 avril 2018 consid. 2.1; 6B_688/2014 du 22 décembre 2017 consid. 27.2.1).
L'exigence, pour appliquer l'art. 49 al. 1 CP, que les peines soient de même genre, implique que le juge examine, pour chaque infraction commise, la nature de la peine à prononcer pour chacune d'elle. Le prononcé d'une peine d'ensemble en application du principe de l'aggravation contenu à l'art. 49 CP n'est ensuite possible que si le juge choisit, dans le cas concret, le même genre de peine pour sanctionner chaque infraction commise (arrêt 6B_559/2018 du 26 octobre 2018 consid. 1.1.1 destiné à la publication; ATF 142 IV 265 consid. 2.3.2 p. 267 s.; 138 IV 120 consid. 5.2 p. 122 s.). Que les dispositions pénales applicables prévoient abstraitement des peines de même genre ne suffit pas (arrêt 6B_559/2018 du 26 octobre 2018 consid. 1.1 destiné à la publication; ATF 144 IV 217 consid. 2.2 p. 219 s.; 138 IV 120 consid. 5.2 p. 123). Si les sanctions envisagées concrètement ne sont pas du même genre, elles doivent être prononcées cumulativement (arrêt 6B_559/2018 du 26 octobre 2018 consid. 1.1 destiné à la publication; ATF 142 IV 265 consid. 2.3.2 p. 267 s.; 138 IV 120 consid. 5.2 p. 122; 137 IV 57 consid. 4.3.1 p. 58). La peine privative de liberté et la peine pécuniaire ne sont pas des sanctions du même genre (arrêt 6B_559/2018 du 26 octobre 2018 consid. 1.1 destiné à la publication; ATF 144 IV 217 consid. 2.2 p. 219 s.)
S'agissant du concours simultané, il est renvoyé pour le surplus aux arrêts topiques récents relatifs à l'art. 49 al. 1 CP (arrêt 6B_559/2018 du 26 octobre 2018 consid. 1 destiné à la publication; ATF 144 IV 217, en particulier consid. 4.1 p. 238 s.).
1.2.2. Si le juge doit prononcer une condamnation pour une infraction que l'auteur a commise avant d'avoir été condamné pour une autre infraction, il fixe la peine complémentaire de sorte que l'auteur ne soit pas puni plus sévèrement que si les diverses infractions avaient fait l'objet d'un seul jugement (art. 49 al. 2 CP).
Face à plusieurs condamnations antérieures, il faut rattacher chacune des infractions anciennes à la condamnation qui suit la commission de l'acte délictueux; en effet, un jugement pénal doit en principe sanctionner tous les actes répréhensibles commis avant son prononcé. Le rattachement des actes anciens à la condamnation qui les suit permet de former des groupes d'infractions (ATF 116 IV 14 consid. 2c p. 17 s.; arrêts 6B_390/2012 du 18 février 2013 consid. 4.3.1; 6B_28/2008 du 10 avril 2008 consid. 3.3.2; SONJA KOCH, Asperationsprinzip und retrospektive Konkurrenz, 2013, p. 296 ss).
Le Tribunal fédéral a récemment clarifié la jurisprudence en matière de concours rétrospectif partiel, dans un arrêt destiné à la publication aux ATF (arrêt 6B_1037/2018 du 27 décembre 2018). Au lieu de recourir conjointement aux deux premiers alinéas de l'art. 49 CP - comme le préconisait jusqu'ici la jurisprudence -, le juge amené à sanctionner des infractions commises antérieurement et postérieurement à un jugement précédent doit procéder en deux temps. Tout d'abord, il doit s'attacher aux infractions commises avant ledit jugement. Le juge doit examiner si, eu égard au genre de peine envisagé, une application de l'art. 49 al. 2 CP entre en ligne de compte (arrêt 6B_1037/2018 du 27 décembre 2018 consid. 1.3 destiné à la publication; cf. ATF 142 IV 265 consid. 2.3.2 p. 267 s. et les références citées). Si tel est le cas, il doit fixer une peine complémentaire (Zusatzstrafe) à la peine de base (Grundstrafe) en tenant compte du principe de l'aggravation découlant de l'art. 49 al. 1 CP (arrêt 6B_1037/2018 du 27 décembre 2018 consid. 1.3 destiné à la publication; cf. ATF 142 IV 265 consid. 2.4.4-2.4.6 p. 271 ss).
Si, en revanche, l'art. 49 al. 2 CP ne peut être appliqué, ainsi parce que le genre de peine envisagé pour sanctionner les infractions antérieures au jugement diffère de celui de la sanction déjà prononcée, le juge doit retenir une peine cumulative. Ensuite, le juge considère les infractions commises postérieurement au jugement précédent, en fixant pour celles-ci une peine indépendante, le cas échéant en faisant application de l'art. 49 al. 1 CP. Il additionne enfin la peine complémentaire ou la peine cumulative retenue pour sanctionner la ou les infractions commises antérieurement au jugement précédent à celle retenue pour sanctionner les infractions commises postérieurement à cette décision (arrêt 6B_1037/2018 du 27 décembre 2018 consid. 1.3 destiné à la publication).
1.3. La présente procédure concerne de nombreux cas d'escroqueries et un faux dans les titres. Plusieurs cas d'escroqueries et le faux dans les titres ont été commis entre 2007 et 2013, à savoir avant la première condamnation du recourant, datant du 20 mars 2013. D'autres cas d'escroqueries semblent avoir été commis entre la première et la seconde condamnation du recourant (du 25 juin 2014), voire entre la deuxième et la troisième condamnation (du 6 juin 2016).
1.4. Dans son considérant concernant la peine, la cour cantonale a retenu que le résultat total des infractions concernait une somme importante et a relevé qu'elles avaient été commises sur une longue durée. Elle a constaté que la participation du recourant en cours d'instruction n'était pas particulièrement méritoire et a retenu le concours d'infractions entre l'escroquerie et les faux dans les titres. La cour cantonale a constaté que la culpabilité du recourant était un peu plus importante que celle de sa coaccusée, dans la mesure où, outre le faux dans les titres, le recourant s'était rendu coupable d'un cas d'escroquerie supplémentaire et que les inscriptions à son casier judiciaire étaient plus nombreuses.
En définitive, elle a confirmé la peine privative de liberté de 7 mois ferme prononcée en première instance.
1.5. Ce raisonnement n'est pas conforme au droit fédéral pour plusieurs motifs.
En premier lieu, force est de constater que, si la cour cantonale relève que la culpabilité du recourant est " un peu plus importante que celle de sa coaccusée ", elle omet de la qualifier, tant pour le recourant que pour sa coaccusée. Elle ne distingue pas les différentes infractions retenues et ne fait aucune mention des critères subjectifs liés aux actes reprochés au recourant. En outre, ainsi que le relève le recourant, la cour cantonale ne motive d'aucune manière le choix du genre de peine, ce, en violation du droit fédéral. Par ailleurs, la motivation cantonale ne permet pas de comprendre dans quelle mesure les règles déduites de l'art. 49 al. 1 et 2 CP ont été appliquées s'agissant des différents concours.
En définitive, la décision entreprise ne permet d'aucune manière de suivre le raisonnement qui a présidé à la détermination du genre et de la quotité de la peine. Il en résulte que le recours doit être admis, le jugement entrepris doit être annulé s'agissant de la peine et la cause renvoyée à la cour cantonale pour nouvelle décision. La cour cantonale devra former des groupes d'infractions, motiver le genre et la quotité de la peine pour chacune d'entre elles et déterminer si, cas échéant, dans quelle mesure il y a lieu de prononcer une peine, voire des peines complémentaires ou prononcer une, voire des peines cumulatives (cf. art. 41, 47, 49 al. 1 et 2 et 50 CP). La cour cantonale justifiera, cas échéant, la différence entre les peines prononcées contre le recourant et sa coauteure (cf. art. 8 al. 1 Cst.; ATF 135 IV 191 consid. 3.2 p. 193 s.). En tout état, elle veillera à fixer une peine dans le respect de l'interdiction de la reformatio in pejus (cf. ATF 143 IV 469 consid. 4.1 p. 472; 142 IV 89 consid. 2 p. 90) et tiendra compte, cas échéant, de la limite prévue à l'art. 34 al. 1 CP.
Cela étant, les griefs tirés de la violation de l'art. 42 al. 1 CP, relatifs au sursis, deviennent sans objet.
2.
Au vu de ce qui précède, le recours doit être admis, le jugement entrepris annulé s'agissant de la peine et la cause renvoyée à l'autorité précédente pour nouvelle décision dans le sens des considérants.
Le recourant, qui obtient gain de cause, ne supportera pas de frais judiciaires (art. 66 al. 1 LTF). Il a droit à des dépens à la charge du canton de Vaud (art. 68 al. 1 LTF). Cela rend sans objet sa demande d'assistance judiciaire.
Par ces motifs, le Tribunal fédéral prononce :
1.
Le recours est admis, le jugement attaqué est annulé s'agissant de la peine et la cause est renvoyée à la cour cantonale pour nouvelle décision.
2.
Il n'est pas perçu de frais judiciaires.
3.
Le canton de Vaud versera, en mains de l'avocat du recourant, une indemnité de 3'000 fr. à titre de dépens pour la procédure devant le Tribunal fédéral.
4.
Le présent arrêt est communiqué aux parties et à la Cour d'appel pénale du Tribunal cantonal du canton de Vaud.
Lausanne, le 5 février 2019
Au nom de la Cour de droit pénal
du Tribunal fédéral suisse
Le Président : Denys
La Greffière : Klinke